home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1997 April: Mac OS SDK / Dev.CD Apr 97 SDK1.toast / Development Kits (Disc 1) / QuickTime / QuickTime™ 2.5 / Interfaces for Programmers / AIncludes / Movies.a < prev    next >
Encoding:
Text File  |  1997-02-26  |  137.6 KB  |  6,453 lines  |  [TEXT/MPS ]

  1. ;
  2. ;    File:        Movies.a
  3. ;
  4. ;    Contains:    QuickTime interfaces
  5. ;
  6. ;    Version:    Technology:    
  7. ;                Release:    QuickTime 2.5 interfaces to use with ETO #20
  8. ;
  9. ;    Copyright:    © 1984-1996 by Apple Computer, Inc.  All rights reserved.
  10. ;
  11. ;    Bugs?:        If you find a problem with this file, send the file and version
  12. ;                information (from above) and the problem description to:
  13. ;
  14. ;                    Internet:    apple.bugs@applelink.apple.com
  15. ;                    AppleLink:    APPLE.BUGS
  16. ;
  17. ;
  18.     IF &TYPE('__MOVIES__') = 'UNDEFINED' THEN
  19. __MOVIES__ SET 1
  20.  
  21.     IF &TYPE('__QUICKDRAW__') = 'UNDEFINED' THEN
  22.     include 'Quickdraw.a'
  23.     ENDIF
  24.     IF &TYPE('__ALIASES__') = 'UNDEFINED' THEN
  25.     include 'Aliases.a'
  26.     ENDIF
  27.     IF &TYPE('__EVENTS__') = 'UNDEFINED' THEN
  28.     include 'Events.a'
  29.     ENDIF
  30.     IF &TYPE('__MENUS__') = 'UNDEFINED' THEN
  31.     include 'Menus.a'
  32.     ENDIF
  33.     IF &TYPE('__COMPONENTS__') = 'UNDEFINED' THEN
  34.     include 'Components.a'
  35.     ENDIF
  36.     IF &TYPE('__IMAGECOMPRESSION__') = 'UNDEFINED' THEN
  37.     include 'ImageCompression.a'
  38.     ENDIF
  39.     IF &TYPE('__SOUND__') = 'UNDEFINED' THEN
  40.     include 'Sound.a'
  41.     ENDIF
  42. ;   "kFix1" is defined in FixMath as "fixed1"  
  43. ;  error codes are in Errors.[haa] 
  44. ;  gestalt codes are in Gestalt.[hpa] 
  45.  
  46. MovieFileType                    EQU        'MooV'
  47.  
  48. MediaHandlerType                EQU        'mhlr'
  49. DataHandlerType                    EQU        'dhlr'
  50.  
  51. VideoMediaType                    EQU        'vide'
  52. SoundMediaType                    EQU        'soun'
  53. TextMediaType                    EQU        'text'
  54. BaseMediaType                    EQU        'gnrc'
  55. MPEGMediaType                    EQU        'MPEG'
  56. MusicMediaType                    EQU        'musi'
  57. TimeCodeMediaType                EQU        'tmcd'
  58. SpriteMediaType                    EQU        'sprt'
  59. TweenMediaType                    EQU        'twen'
  60. ThreeDeeMediaType                EQU        'qd3d'
  61. HandleDataHandlerSubType        EQU        'hndl'
  62. ResourceDataHandlerSubType        EQU        'rsrc'
  63.  
  64. VisualMediaCharacteristic        EQU        'eyes'
  65. AudioMediaCharacteristic        EQU        'ears'
  66. kCharacteristicCanSendVideo        EQU        'vsnd'
  67.  
  68. DoTheRightThing                    EQU        0
  69. MovieRecord                RECORD 0
  70. data                     ds.l    1                ; offset: $0 (0) <-- really an array of length one
  71. sizeof                     EQU *                    ; size:   $4 (4)
  72.                         ENDR
  73. ; typedef struct MovieRecord *            Movie
  74.  
  75. TrackRecord                RECORD 0
  76. data                     ds.l    1                ; offset: $0 (0) <-- really an array of length one
  77. sizeof                     EQU *                    ; size:   $4 (4)
  78.                         ENDR
  79. ; typedef struct TrackRecord *            Track
  80.  
  81. MediaRecord                RECORD 0
  82. data                     ds.l    1                ; offset: $0 (0) <-- really an array of length one
  83. sizeof                     EQU *                    ; size:   $4 (4)
  84.                         ENDR
  85. ; typedef struct MediaRecord *            Media
  86.  
  87. UserDataRecord            RECORD 0
  88. data                     ds.l    1                ; offset: $0 (0) <-- really an array of length one
  89. sizeof                     EQU *                    ; size:   $4 (4)
  90.                         ENDR
  91. ; typedef struct UserDataRecord *        UserData
  92.  
  93. TrackEditStateRecord    RECORD 0
  94. data                     ds.l    1                ; offset: $0 (0) <-- really an array of length one
  95. sizeof                     EQU *                    ; size:   $4 (4)
  96.                         ENDR
  97. ; typedef struct TrackEditStateRecord *    TrackEditState
  98.  
  99. MovieEditStateRecord    RECORD 0
  100. data                     ds.l    1                ; offset: $0 (0) <-- really an array of length one
  101. sizeof                     EQU *                    ; size:   $4 (4)
  102.                         ENDR
  103. ; typedef struct MovieEditStateRecord *    MovieEditState
  104.  
  105. SpriteWorldRecord        RECORD 0
  106. data                     ds.l    1                ; offset: $0 (0) <-- really an array of length one
  107. sizeof                     EQU *                    ; size:   $4 (4)
  108.                         ENDR
  109. ; typedef struct SpriteWorldRecord *    SpriteWorld
  110.  
  111. SpriteRecord            RECORD 0
  112. data                     ds.l    1                ; offset: $0 (0) <-- really an array of length one
  113. sizeof                     EQU *                    ; size:   $4 (4)
  114.                         ENDR
  115. ; typedef struct SpriteRecord *            Sprite
  116.  
  117. SampleDescription        RECORD 0
  118. descSize                 ds.l    1                ; offset: $0 (0)
  119. dataFormat                 ds.l    1                ; offset: $4 (4)
  120. resvd1                     ds.l    1                ; offset: $8 (8)
  121. resvd2                     ds.w    1                ; offset: $C (12)
  122. dataRefIndex             ds.w    1                ; offset: $E (14)
  123. sizeof                     EQU *                    ; size:   $10 (16)
  124.                         ENDR
  125. ; typedef struct SampleDescription *    SampleDescriptionPtr
  126.  
  127. ; typedef SampleDescriptionPtr *        SampleDescriptionHandle
  128.  
  129. ; typedef Handle                         QTAtomContainer
  130.  
  131. ; typedef long                             QTAtom
  132.  
  133. ; typedef long                             QTAtomType
  134.  
  135. ; typedef long                             QTAtomID
  136.  
  137. SoundDescription        RECORD 0
  138. descSize                 ds.l    1                ; offset: $0 (0)        ;  total size of SoundDescription including extra data 
  139. dataFormat                 ds.l    1                ; offset: $4 (4)        ;   
  140. resvd1                     ds.l    1                ; offset: $8 (8)        ;  reserved for apple use 
  141. resvd2                     ds.w    1                ; offset: $C (12)
  142. dataRefIndex             ds.w    1                ; offset: $E (14)
  143. version                     ds.w    1                ; offset: $10 (16)        ;  which version is this data 
  144. revlevel                 ds.w    1                ; offset: $12 (18)        ;  what version of that codec did this 
  145. vendor                     ds.l    1                ; offset: $14 (20)        ;  whose  codec compressed this data 
  146. numChannels                 ds.w    1                ; offset: $18 (24)        ;  number of channels of sound 
  147. sampleSize                 ds.w    1                ; offset: $1A (26)        ;  number of bits per sample 
  148. compressionID             ds.w    1                ; offset: $1C (28)        ;  sound compression used, 0 if none 
  149. packetSize                 ds.w    1                ; offset: $1E (30)        ;  packet size for compression, 0 if no compression 
  150. sampleRate                 ds.l    1                ; offset: $20 (32)        ;  sample rate sound is captured at 
  151. sizeof                     EQU *                    ; size:   $24 (36)
  152.                         ENDR
  153. ; typedef struct SoundDescription *        SoundDescriptionPtr
  154.  
  155. ; typedef SoundDescriptionPtr *            SoundDescriptionHandle
  156.  
  157. TextDescription            RECORD 0
  158. descSize                 ds.l    1                ; offset: $0 (0)        ;  Total size of TextDescription
  159. dataFormat                 ds.l    1                ; offset: $4 (4)        ;  'text'
  160. resvd1                     ds.l    1                ; offset: $8 (8)
  161. resvd2                     ds.w    1                ; offset: $C (12)
  162. dataRefIndex             ds.w    1                ; offset: $E (14)
  163. displayFlags             ds.l    1                ; offset: $10 (16)        ;  see enum below for flag values
  164. textJustification         ds.l    1                ; offset: $14 (20)        ;  Can be: teCenter,teFlush -Default,-Right,-Left
  165. bgColor                     ds        RGBColor        ; offset: $18 (24)        ;  Background color
  166. defaultTextBox             ds        Rect            ; offset: $1E (30)        ;  Location to place the text within the track bounds
  167. defaultStyle             ds        ScrpSTElement    ; offset: $26 (38)        ;  Default style (struct defined in TextEdit.h)
  168. defaultFontName             ds.b    1                ; offset: $3A (58) <-- really an array of length one ;  Font Name (pascal string - struct extended to fit) 
  169.                          ORG 60
  170. sizeof                     EQU *                    ; size:   $3C (60)
  171.                         ENDR
  172. ; typedef struct TextDescription *        TextDescriptionPtr
  173.  
  174. ; typedef TextDescriptionPtr *            TextDescriptionHandle
  175.  
  176. ThreeDeeDescription        RECORD 0
  177. descSize                 ds.l    1                ; offset: $0 (0)        ;  total size of ThreeDeeDescription including extra data 
  178. dataFormat                 ds.l    1                ; offset: $4 (4)        ;   
  179. resvd1                     ds.l    1                ; offset: $8 (8)        ;  reserved for apple use 
  180. resvd2                     ds.w    1                ; offset: $C (12)
  181. dataRefIndex             ds.w    1                ; offset: $E (14)
  182. version                     ds.l    1                ; offset: $10 (16)        ;  which version is this data 
  183. rendererType             ds.l    1                ; offset: $14 (20)        ;  which renderer to use, 0 for default 
  184. sizeof                     EQU *                    ; size:   $18 (24)
  185.                         ENDR
  186. ; typedef struct ThreeDeeDescription *    ThreeDeeDescriptionPtr
  187.  
  188. ; typedef ThreeDeeDescriptionPtr *        ThreeDeeDescriptionHandle
  189.  
  190. DataReferenceRecord        RECORD 0
  191. dataRefType                 ds.l    1                ; offset: $0 (0)
  192. dataRef                     ds.l    1                ; offset: $4 (4)
  193. sizeof                     EQU *                    ; size:   $8 (8)
  194.                         ENDR
  195. ; typedef struct DataReferenceRecord *    DataReferencePtr
  196.  
  197. ;
  198. ;--------------------------
  199. ;  Music Sample Description
  200. ;--------------------------
  201. ;
  202. MusicDescription        RECORD 0
  203. descSize                 ds.l    1                ; offset: $0 (0)
  204. dataFormat                 ds.l    1                ; offset: $4 (4)        ;  'musi' 
  205. resvd1                     ds.l    1                ; offset: $8 (8)
  206. resvd2                     ds.w    1                ; offset: $C (12)
  207. dataRefIndex             ds.w    1                ; offset: $E (14)
  208. musicFlags                 ds.l    1                ; offset: $10 (16)
  209. headerData                 ds.l    1                ; offset: $14 (20) <-- really an array of length one ;  variable size! 
  210. sizeof                     EQU *                    ; size:   $18 (24)
  211.                         ENDR
  212. ; typedef struct MusicDescription *        MusicDescriptionPtr
  213.  
  214. ; typedef MusicDescriptionPtr *            MusicDescriptionHandle
  215.  
  216.  
  217. kMusicFlagDontPlay2Soft            EQU        $00000001
  218.  
  219. dfDontDisplay                    EQU        $01                    ; Don't display the text
  220. dfDontAutoScale                    EQU        $02                    ; Don't scale text as track bounds grows or shrinks
  221. dfClipToTextBox                    EQU        $04                    ; Clip update to the textbox
  222. dfUseMovieBGColor                EQU        $08                    ; Set text background to movie's background color
  223. dfShrinkTextBoxToFit            EQU        $10                    ; Compute minimum box to fit the sample
  224. dfScrollIn                        EQU        $20                    ; Scroll text in until last of text is in view 
  225. dfScrollOut                        EQU        $40                    ; Scroll text out until last of text is gone (if both set, scroll in then out)
  226. dfHorizScroll                    EQU        $80                    ; Scroll text horizontally (otherwise it's vertical)
  227. dfReverseScroll                    EQU        $0100                ; vert: scroll down rather than up; horiz: scroll backwards (justfication dependent)
  228. dfContinuousScroll                EQU        $0200                ; new samples cause previous samples to scroll out 
  229. dfFlowHoriz                        EQU        $0400                ; horiz scroll text flows in textbox rather than extend to right 
  230. dfContinuousKaraoke                EQU        $0800                ; ignore begin offset, hilite everything up to the end offset(karaoke)
  231. dfDropShadow                    EQU        $1000                ; display text with a drop shadow 
  232. dfAntiAlias                        EQU        $2000                ; attempt to display text anti aliased
  233. dfKeyedText                        EQU        $4000                ; key the text over background
  234. dfInverseHilite                    EQU        $8000                ; Use inverse hiliting rather than using hilite color
  235. dfTextColorHilite                EQU        $00010000            ; changes text color in place of hiliting. 
  236.  
  237. searchTextDontGoToFoundTime        EQU        $00010000
  238. searchTextDontHiliteFoundText    EQU        $00020000
  239. searchTextOneTrackOnly            EQU        $00040000
  240. searchTextEnabledTracksOnly        EQU        $00080000
  241.  
  242. k3DMediaRendererEntry            EQU        'rend'
  243. k3DMediaRendererName            EQU        'name'
  244. k3DMediaRendererCode            EQU        'rcod'
  245. ;  progress messages 
  246.  
  247. movieProgressOpen                EQU        0
  248. movieProgressUpdatePercent        EQU        1
  249. movieProgressClose                EQU        2
  250. ;  progress operations 
  251.  
  252. progressOpFlatten                EQU        1
  253. progressOpInsertTrackSegment    EQU        2
  254. progressOpInsertMovieSegment    EQU        3
  255. progressOpPaste                    EQU        4
  256. progressOpAddMovieSelection        EQU        5
  257. progressOpCopy                    EQU        6
  258. progressOpCut                    EQU        7
  259. progressOpLoadMovieIntoRam        EQU        8
  260. progressOpLoadTrackIntoRam        EQU        9
  261. progressOpLoadMediaIntoRam        EQU        10
  262. progressOpImportMovie            EQU        11
  263. progressOpExportMovie            EQU        12
  264.  
  265. mediaQualityDraft                EQU        $0000
  266. mediaQualityNormal                EQU        $0040
  267. mediaQualityBetter                EQU        $0080
  268. mediaQualityBest                EQU        $00C0
  269. ; typedef ComponentInstance             MediaHandler
  270.  
  271. ; typedef ComponentInstance             DataHandler
  272.  
  273. ; typedef Component                     MediaHandlerComponent
  274.  
  275. ; typedef Component                     DataHandlerComponent
  276.  
  277. ; typedef ComponentResult                 HandlerError
  278.  
  279. ;  TimeBase equates 
  280. ; typedef long                             TimeValue
  281.  
  282. ; typedef long                             TimeScale
  283.  
  284. CompTimeValue            RECORD 0
  285. f                         ds        wide
  286. sizeof                     EQU *                    ; size:   $8 (8)
  287.                         ENDR
  288.  
  289.  
  290.  
  291. loopTimeBase                    EQU        1
  292. palindromeLoopTimeBase            EQU        2
  293. maintainTimeBaseZero            EQU        4
  294. ; typedef unsigned long                 TimeBaseFlags
  295.  
  296. TimeBaseRecord            RECORD 0
  297. data                     ds.l    1                ; offset: $0 (0) <-- really an array of length one
  298. sizeof                     EQU *                    ; size:   $4 (4)
  299.                         ENDR
  300. ; typedef struct TimeBaseRecord *        TimeBase
  301.  
  302. CallBackRecord            RECORD 0
  303. data                     ds.l    1                ; offset: $0 (0) <-- really an array of length one
  304. sizeof                     EQU *                    ; size:   $4 (4)
  305.                         ENDR
  306. ; typedef struct CallBackRecord *        QTCallBack
  307.  
  308. TimeRecord                RECORD 0
  309. value                     ds        CompTimeValue    ; offset: $0 (0)        ;  units 
  310. scale                     ds.l    1                ; offset: $8 (8)        ;  units per second 
  311. base                     ds.l    1                ; offset: $C (12)
  312. sizeof                     EQU *                    ; size:   $10 (16)
  313.                         ENDR
  314. ;  CallBack equates 
  315.  
  316. triggerTimeFwd                    EQU        $0001                ; when curTime exceeds triggerTime going forward 
  317. triggerTimeBwd                    EQU        $0002                ; when curTime exceeds triggerTime going backwards 
  318. triggerTimeEither                EQU        $0003                ; when curTime exceeds triggerTime going either direction 
  319. triggerRateLT                    EQU        $0004                ; when rate changes to less than trigger value 
  320. triggerRateGT                    EQU        $0008                ; when rate changes to greater than trigger value 
  321. triggerRateEqual                EQU        $0010                ; when rate changes to equal trigger value 
  322. triggerRateLTE                    EQU        $0014
  323. triggerRateGTE                    EQU        $0018
  324. triggerRateNotEqual                EQU        $001C
  325. triggerRateChange                EQU        0
  326. triggerAtStart                    EQU        $0001
  327. triggerAtStop                    EQU        $0002
  328. ; typedef unsigned short                 QTCallBackFlags
  329.  
  330.  
  331. timeBaseBeforeStartTime            EQU        1
  332. timeBaseAfterStopTime            EQU        2
  333. ; typedef unsigned long                 TimeBaseStatus
  334.  
  335.  
  336. callBackAtTime                    EQU        1
  337. callBackAtRate                    EQU        2
  338. callBackAtTimeJump                EQU        3
  339. callBackAtExtremes                EQU        4
  340. callBackAtInterrupt                EQU        $8000
  341. callBackAtDeferredTask            EQU        $4000
  342. ; typedef unsigned short                 QTCallBackType
  343.  
  344.  
  345. qtcbNeedsRateChanges            EQU        1                    ; wants to know about rate changes 
  346. qtcbNeedsTimeChanges            EQU        2                    ; wants to know about time changes 
  347. qtcbNeedsStartStopChanges        EQU        4                    ; wants to know when TimeBase start/stop is changed
  348. QTCallBackHeader        RECORD 0
  349. callBackFlags             ds.l    1                ; offset: $0 (0)
  350. reserved1                 ds.l    1                ; offset: $4 (4)
  351. qtPrivate                 ds.b    40                ; offset: $8 (8)
  352. sizeof                     EQU *                    ; size:   $30 (48)
  353.                         ENDR
  354. QTSyncTaskRecord        RECORD 0
  355. qLink                     ds.l    1                ; offset: $0 (0)
  356. proc                     ds.l    1                ; offset: $4 (4)
  357. sizeof                     EQU *                    ; size:   $8 (8)
  358.                         ENDR
  359. ; typedef struct QTSyncTaskRecord *        QTSyncTaskPtr
  360.  
  361.  
  362. keepInRam                        EQU        $01                    ; load and make non-purgable
  363. unkeepInRam                        EQU        $02                    ; mark as purgable
  364. flushFromRam                    EQU        $04                    ; empty those handles
  365. loadForwardTrackEdits            EQU        $08                    ;    load track edits into ram for playing forward
  366. loadBackwardTrackEdits            EQU        $10                    ;    load track edits into ram for playing in reverse
  367.  
  368. newMovieActive                    EQU        $01
  369. newMovieDontResolveDataRefs        EQU        $02
  370. newMovieDontAskUnresolvedDataRefs EQU    $04
  371. newMovieDontAutoAlternates        EQU        $08
  372. newMovieDontUpdateForeBackPointers EQU    $10
  373. ;  track usage bits 
  374.  
  375. trackUsageInMovie                EQU        $02
  376. trackUsageInPreview                EQU        $04
  377. trackUsageInPoster                EQU        $08
  378. ;  Add/GetMediaSample flags 
  379.  
  380. mediaSampleNotSync                EQU        $01                    ; sample is not a sync sample (eg. is frame differenced 
  381. mediaSampleShadowSync            EQU        $02                    ; sample is a shadow sync 
  382.  
  383. pasteInParallel                    EQU        $01
  384. showUserSettingsDialog            EQU        $02
  385. movieToFileOnlyExport            EQU        $04
  386. movieFileSpecValid                EQU        $08
  387.  
  388. nextTimeMediaSample                EQU        $01
  389. nextTimeMediaEdit                EQU        $02
  390. nextTimeTrackEdit                EQU        $04
  391. nextTimeSyncSample                EQU        $08
  392. nextTimeStep                    EQU        $10
  393. nextTimeEdgeOK                    EQU        $4000
  394. nextTimeIgnoreActiveSegment        EQU        $8000
  395. ; typedef unsigned short                 nextTimeFlagsEnum
  396.  
  397.  
  398. createMovieFileDeleteCurFile    EQU        $80000000
  399. createMovieFileDontCreateMovie    EQU        $40000000
  400. createMovieFileDontOpenFile        EQU        $20000000
  401. ; typedef unsigned long                 createMovieFileFlagsEnum
  402.  
  403.  
  404. flattenAddMovieToDataFork        EQU        $00000001
  405. flattenActiveTracksOnly            EQU        $00000004
  406. flattenDontInterleaveFlatten    EQU        $00000008
  407. flattenFSSpecPtrIsDataRefRecordPtr EQU    $00000010
  408. ; typedef unsigned long                 movieFlattenFlagsEnum
  409.  
  410.  
  411. movieInDataForkResID            EQU        -1                    ; magic res ID 
  412.  
  413. mcTopLeftMovie                    EQU        $01                    ; usually centered 
  414. mcScaleMovieToFit                EQU        $02                    ; usually only scales down 
  415. mcWithBadge                        EQU        $04                    ; give me a badge 
  416. mcNotVisible                    EQU        $08                    ; don't show controller 
  417. mcWithFrame                        EQU        $10                    ; gimme a frame 
  418.  
  419. movieScrapDontZeroScrap            EQU        $01
  420. movieScrapOnlyPutMovie            EQU        $02
  421.  
  422. dataRefSelfReference            EQU        $01
  423. dataRefWasNotResolved            EQU        $02
  424. ; typedef unsigned long                 dataRefAttributesFlags
  425.  
  426.  
  427. hintsScrubMode                    EQU        $01                    ; mask == && (if flags == scrub on, flags != scrub off) 
  428. hintsLoop                        EQU        $02
  429. hintsDontPurge                    EQU        $04
  430. hintsUseScreenBuffer            EQU        $20
  431. hintsAllowInterlace                EQU        $40
  432. hintsUseSoundInterp                EQU        $80
  433. hintsHighQuality                EQU        $0100                ; slooooow 
  434. hintsPalindrome                    EQU        $0200
  435. hintsInactive                    EQU        $0800
  436. ; typedef unsigned long                 playHintsEnum
  437.  
  438.  
  439. mediaHandlerFlagBaseClient        EQU        1
  440. ; typedef unsigned long                 mediaHandlerFlagsEnum
  441.  
  442.  
  443. movieTrackMediaType                EQU        $01
  444. movieTrackCharacteristic        EQU        $02
  445. movieTrackEnabledOnly            EQU        $04
  446. SampleReferenceRecord    RECORD 0
  447. dataOffset                 ds.l    1                ; offset: $0 (0)
  448. dataSize                 ds.l    1                ; offset: $4 (4)
  449. durationPerSample         ds.l    1                ; offset: $8 (8)
  450. numberOfSamples             ds.l    1                ; offset: $C (12)
  451. sampleFlags                 ds.w    1                ; offset: $10 (16)
  452. sizeof                     EQU *                    ; size:   $12 (18)
  453.                         ENDR
  454. ; typedef struct SampleReferenceRecord * SampleReferencePtr
  455.  
  456. ;
  457. ;************************
  458. ;* Initialization Routines 
  459. ;*************************
  460. ;
  461. ;
  462. ; pascal OSErr EnterMovies(void )
  463. ;
  464.     IF ¬ GENERATINGCFM THEN
  465.         Macro
  466.         _EnterMovies
  467.             moveq               #1,d0
  468.             dc.w                $AAAA
  469.         EndM
  470.     ELSE
  471.         IMPORT_CFM_FUNCTION EnterMovies
  472.     ENDIF
  473.  
  474. ;
  475. ; pascal void ExitMovies(void )
  476. ;
  477.     IF ¬ GENERATINGCFM THEN
  478.         Macro
  479.         _ExitMovies
  480.             moveq               #2,d0
  481.             dc.w                $AAAA
  482.         EndM
  483.     ELSE
  484.         IMPORT_CFM_FUNCTION ExitMovies
  485.     ENDIF
  486.  
  487. ;
  488. ;************************
  489. ;* Error Routines 
  490. ;*************************
  491. ;
  492. ;
  493. ; pascal OSErr GetMoviesError(void )
  494. ;
  495.     IF ¬ GENERATINGCFM THEN
  496.         Macro
  497.         _GetMoviesError
  498.             moveq               #3,d0
  499.             dc.w                $AAAA
  500.         EndM
  501.     ELSE
  502.         IMPORT_CFM_FUNCTION GetMoviesError
  503.     ENDIF
  504.  
  505. ;
  506. ; pascal void ClearMoviesStickyError(void )
  507. ;
  508.     IF ¬ GENERATINGCFM THEN
  509.         Macro
  510.         _ClearMoviesStickyError
  511.             move.w              #$00DE,d0
  512.             dc.w                $AAAA
  513.         EndM
  514.     ELSE
  515.         IMPORT_CFM_FUNCTION ClearMoviesStickyError
  516.     ENDIF
  517.  
  518. ;
  519. ; pascal OSErr GetMoviesStickyError(void )
  520. ;
  521.     IF ¬ GENERATINGCFM THEN
  522.         Macro
  523.         _GetMoviesStickyError
  524.             moveq               #4,d0
  525.             dc.w                $AAAA
  526.         EndM
  527.     ELSE
  528.         IMPORT_CFM_FUNCTION GetMoviesStickyError
  529.     ENDIF
  530.  
  531. ;
  532. ; pascal void SetMoviesErrorProc(MoviesErrorUPP errProc, long refcon)
  533. ;
  534.     IF ¬ GENERATINGCFM THEN
  535.         Macro
  536.         _SetMoviesErrorProc
  537.             move.w              #$00EF,d0
  538.             dc.w                $AAAA
  539.         EndM
  540.     ELSE
  541.         IMPORT_CFM_FUNCTION SetMoviesErrorProc
  542.     ENDIF
  543.  
  544. ;
  545. ;************************
  546. ;* Idle Routines 
  547. ;*************************
  548. ;
  549. ;
  550. ; pascal void MoviesTask(Movie theMovie, long maxMilliSecToUse)
  551. ;
  552.     IF ¬ GENERATINGCFM THEN
  553.         Macro
  554.         _MoviesTask
  555.             moveq               #5,d0
  556.             dc.w                $AAAA
  557.         EndM
  558.     ELSE
  559.         IMPORT_CFM_FUNCTION MoviesTask
  560.     ENDIF
  561.  
  562. ;
  563. ; pascal OSErr PrerollMovie(Movie theMovie, TimeValue time, Fixed Rate)
  564. ;
  565.     IF ¬ GENERATINGCFM THEN
  566.         Macro
  567.         _PrerollMovie
  568.             moveq               #6,d0
  569.             dc.w                $AAAA
  570.         EndM
  571.     ELSE
  572.         IMPORT_CFM_FUNCTION PrerollMovie
  573.     ENDIF
  574.  
  575. ;
  576. ; pascal OSErr LoadMovieIntoRam(Movie theMovie, TimeValue time, TimeValue duration, long flags)
  577. ;
  578.     IF ¬ GENERATINGCFM THEN
  579.         Macro
  580.         _LoadMovieIntoRam
  581.             moveq               #7,d0
  582.             dc.w                $AAAA
  583.         EndM
  584.     ELSE
  585.         IMPORT_CFM_FUNCTION LoadMovieIntoRam
  586.     ENDIF
  587.  
  588. ;
  589. ; pascal OSErr LoadTrackIntoRam(Track theTrack, TimeValue time, TimeValue duration, long flags)
  590. ;
  591.     IF ¬ GENERATINGCFM THEN
  592.         Macro
  593.         _LoadTrackIntoRam
  594.             move.w              #$016E,d0
  595.             dc.w                $AAAA
  596.         EndM
  597.     ELSE
  598.         IMPORT_CFM_FUNCTION LoadTrackIntoRam
  599.     ENDIF
  600.  
  601. ;
  602. ; pascal OSErr LoadMediaIntoRam(Media theMedia, TimeValue time, TimeValue duration, long flags)
  603. ;
  604.     IF ¬ GENERATINGCFM THEN
  605.         Macro
  606.         _LoadMediaIntoRam
  607.             moveq               #8,d0
  608.             dc.w                $AAAA
  609.         EndM
  610.     ELSE
  611.         IMPORT_CFM_FUNCTION LoadMediaIntoRam
  612.     ENDIF
  613.  
  614. ;
  615. ; pascal void SetMovieActive(Movie theMovie, Boolean active)
  616. ;
  617.     IF ¬ GENERATINGCFM THEN
  618.         Macro
  619.         _SetMovieActive
  620.             moveq               #9,d0
  621.             dc.w                $AAAA
  622.         EndM
  623.     ELSE
  624.         IMPORT_CFM_FUNCTION SetMovieActive
  625.     ENDIF
  626.  
  627. ;
  628. ; pascal Boolean GetMovieActive(Movie theMovie)
  629. ;
  630.     IF ¬ GENERATINGCFM THEN
  631.         Macro
  632.         _GetMovieActive
  633.             moveq               #10,d0
  634.             dc.w                $AAAA
  635.         EndM
  636.     ELSE
  637.         IMPORT_CFM_FUNCTION GetMovieActive
  638.     ENDIF
  639.  
  640. ;
  641. ;************************
  642. ;* calls for playing movies, previews, posters
  643. ;*************************
  644. ;
  645. ;
  646. ; pascal void StartMovie(Movie theMovie)
  647. ;
  648.     IF ¬ GENERATINGCFM THEN
  649.         Macro
  650.         _StartMovie
  651.             moveq               #11,d0
  652.             dc.w                $AAAA
  653.         EndM
  654.     ELSE
  655.         IMPORT_CFM_FUNCTION StartMovie
  656.     ENDIF
  657.  
  658. ;
  659. ; pascal void StopMovie(Movie theMovie)
  660. ;
  661.     IF ¬ GENERATINGCFM THEN
  662.         Macro
  663.         _StopMovie
  664.             moveq               #12,d0
  665.             dc.w                $AAAA
  666.         EndM
  667.     ELSE
  668.         IMPORT_CFM_FUNCTION StopMovie
  669.     ENDIF
  670.  
  671. ;
  672. ; pascal void GoToBeginningOfMovie(Movie theMovie)
  673. ;
  674.     IF ¬ GENERATINGCFM THEN
  675.         Macro
  676.         _GoToBeginningOfMovie
  677.             moveq               #13,d0
  678.             dc.w                $AAAA
  679.         EndM
  680.     ELSE
  681.         IMPORT_CFM_FUNCTION GoToBeginningOfMovie
  682.     ENDIF
  683.  
  684. ;
  685. ; pascal void GoToEndOfMovie(Movie theMovie)
  686. ;
  687.     IF ¬ GENERATINGCFM THEN
  688.         Macro
  689.         _GoToEndOfMovie
  690.             moveq               #14,d0
  691.             dc.w                $AAAA
  692.         EndM
  693.     ELSE
  694.         IMPORT_CFM_FUNCTION GoToEndOfMovie
  695.     ENDIF
  696.  
  697. ;
  698. ; pascal Boolean IsMovieDone(Movie theMovie)
  699. ;
  700.     IF ¬ GENERATINGCFM THEN
  701.         Macro
  702.         _IsMovieDone
  703.             move.w              #$00DD,d0
  704.             dc.w                $AAAA
  705.         EndM
  706.     ELSE
  707.         IMPORT_CFM_FUNCTION IsMovieDone
  708.     ENDIF
  709.  
  710. ;
  711. ; pascal Boolean GetMoviePreviewMode(Movie theMovie)
  712. ;
  713.     IF ¬ GENERATINGCFM THEN
  714.         Macro
  715.         _GetMoviePreviewMode
  716.             moveq               #15,d0
  717.             dc.w                $AAAA
  718.         EndM
  719.     ELSE
  720.         IMPORT_CFM_FUNCTION GetMoviePreviewMode
  721.     ENDIF
  722.  
  723. ;
  724. ; pascal void SetMoviePreviewMode(Movie theMovie, Boolean usePreview)
  725. ;
  726.     IF ¬ GENERATINGCFM THEN
  727.         Macro
  728.         _SetMoviePreviewMode
  729.             moveq               #16,d0
  730.             dc.w                $AAAA
  731.         EndM
  732.     ELSE
  733.         IMPORT_CFM_FUNCTION SetMoviePreviewMode
  734.     ENDIF
  735.  
  736. ;
  737. ; pascal void ShowMoviePoster(Movie theMovie)
  738. ;
  739.     IF ¬ GENERATINGCFM THEN
  740.         Macro
  741.         _ShowMoviePoster
  742.             moveq               #17,d0
  743.             dc.w                $AAAA
  744.         EndM
  745.     ELSE
  746.         IMPORT_CFM_FUNCTION ShowMoviePoster
  747.     ENDIF
  748.  
  749. ;
  750. ; pascal void PlayMoviePreview(Movie theMovie, MoviePreviewCallOutUPP callOutProc, long refcon)
  751. ;
  752.     IF ¬ GENERATINGCFM THEN
  753.         Macro
  754.         _PlayMoviePreview
  755.             move.w              #$00F2,d0
  756.             dc.w                $AAAA
  757.         EndM
  758.     ELSE
  759.         IMPORT_CFM_FUNCTION PlayMoviePreview
  760.     ENDIF
  761.  
  762. ;
  763. ;************************
  764. ;* calls for controlling movies & tracks which are playing
  765. ;*************************
  766. ;
  767. ;
  768. ; pascal TimeBase GetMovieTimeBase(Movie theMovie)
  769. ;
  770.     IF ¬ GENERATINGCFM THEN
  771.         Macro
  772.         _GetMovieTimeBase
  773.             moveq               #18,d0
  774.             dc.w                $AAAA
  775.         EndM
  776.     ELSE
  777.         IMPORT_CFM_FUNCTION GetMovieTimeBase
  778.     ENDIF
  779.  
  780. ;
  781. ; pascal void SetMovieMasterTimeBase(Movie theMovie, TimeBase tb, const TimeRecord *slaveZero)
  782. ;
  783.     IF ¬ GENERATINGCFM THEN
  784.         Macro
  785.         _SetMovieMasterTimeBase
  786.             move.w              #$0167,d0
  787.             dc.w                $AAAA
  788.         EndM
  789.     ELSE
  790.         IMPORT_CFM_FUNCTION SetMovieMasterTimeBase
  791.     ENDIF
  792.  
  793. ;
  794. ; pascal void SetMovieMasterClock(Movie theMovie, Component clockMeister, const TimeRecord *slaveZero)
  795. ;
  796.     IF ¬ GENERATINGCFM THEN
  797.         Macro
  798.         _SetMovieMasterClock
  799.             move.w              #$0168,d0
  800.             dc.w                $AAAA
  801.         EndM
  802.     ELSE
  803.         IMPORT_CFM_FUNCTION SetMovieMasterClock
  804.     ENDIF
  805.  
  806. ;
  807. ; pascal void GetMovieGWorld(Movie theMovie, CGrafPtr *port, GDHandle *gdh)
  808. ;
  809.     IF ¬ GENERATINGCFM THEN
  810.         Macro
  811.         _GetMovieGWorld
  812.             moveq               #21,d0
  813.             dc.w                $AAAA
  814.         EndM
  815.     ELSE
  816.         IMPORT_CFM_FUNCTION GetMovieGWorld
  817.     ENDIF
  818.  
  819. ;
  820. ; pascal void SetMovieGWorld(Movie theMovie, CGrafPtr port, GDHandle gdh)
  821. ;
  822.     IF ¬ GENERATINGCFM THEN
  823.         Macro
  824.         _SetMovieGWorld
  825.             moveq               #22,d0
  826.             dc.w                $AAAA
  827.         EndM
  828.     ELSE
  829.         IMPORT_CFM_FUNCTION SetMovieGWorld
  830.     ENDIF
  831.  
  832.  
  833. movieDrawingCallWhenChanged        EQU        0
  834. movieDrawingCallAlways            EQU        1
  835. ;
  836. ; pascal void SetMovieDrawingCompleteProc(Movie theMovie, long flags, MovieDrawingCompleteUPP proc, long refCon)
  837. ;
  838.     IF ¬ GENERATINGCFM THEN
  839.         Macro
  840.         _SetMovieDrawingCompleteProc
  841.             move.w              #$01DE,d0
  842.             dc.w                $AAAA
  843.         EndM
  844.     ELSE
  845.         IMPORT_CFM_FUNCTION SetMovieDrawingCompleteProc
  846.     ENDIF
  847.  
  848. ;
  849. ; pascal void GetMovieNaturalBoundsRect(Movie theMovie, Rect *naturalBounds)
  850. ;
  851.     IF ¬ GENERATINGCFM THEN
  852.         Macro
  853.         _GetMovieNaturalBoundsRect
  854.             move.w              #$022C,d0
  855.             dc.w                $AAAA
  856.         EndM
  857.     ELSE
  858.         IMPORT_CFM_FUNCTION GetMovieNaturalBoundsRect
  859.     ENDIF
  860.  
  861. ;
  862. ; pascal Track GetNextTrackForCompositing(Movie theMovie, Track theTrack)
  863. ;
  864.     IF ¬ GENERATINGCFM THEN
  865.         Macro
  866.         _GetNextTrackForCompositing
  867.             move.w              #$01FA,d0
  868.             dc.w                $AAAA
  869.         EndM
  870.     ELSE
  871.         IMPORT_CFM_FUNCTION GetNextTrackForCompositing
  872.     ENDIF
  873.  
  874. ;
  875. ; pascal Track GetPrevTrackForCompositing(Movie theMovie, Track theTrack)
  876. ;
  877.     IF ¬ GENERATINGCFM THEN
  878.         Macro
  879.         _GetPrevTrackForCompositing
  880.             move.w              #$01FB,d0
  881.             dc.w                $AAAA
  882.         EndM
  883.     ELSE
  884.         IMPORT_CFM_FUNCTION GetPrevTrackForCompositing
  885.     ENDIF
  886.  
  887. ;
  888. ; pascal OSErr SetMovieCompositeBufferFlags(Movie theMovie, long flags)
  889. ;
  890.     IF ¬ GENERATINGCFM THEN
  891.         Macro
  892.         _SetMovieCompositeBufferFlags
  893.             move.w              #$027E,d0
  894.             dc.w                $AAAA
  895.         EndM
  896.     ELSE
  897.         IMPORT_CFM_FUNCTION SetMovieCompositeBufferFlags
  898.     ENDIF
  899.  
  900. ;
  901. ; pascal OSErr GetMovieCompositeBufferFlags(Movie theMovie, long *flags)
  902. ;
  903.     IF ¬ GENERATINGCFM THEN
  904.         Macro
  905.         _GetMovieCompositeBufferFlags
  906.             move.w              #$027F,d0
  907.             dc.w                $AAAA
  908.         EndM
  909.     ELSE
  910.         IMPORT_CFM_FUNCTION GetMovieCompositeBufferFlags
  911.     ENDIF
  912.  
  913. ;
  914. ; pascal void SetTrackGWorld(Track theTrack, CGrafPtr port, GDHandle gdh, TrackTransferUPP proc, long refCon)
  915. ;
  916.     IF ¬ GENERATINGCFM THEN
  917.         Macro
  918.         _SetTrackGWorld
  919.             move.w              #$009D,d0
  920.             dc.w                $AAAA
  921.         EndM
  922.     ELSE
  923.         IMPORT_CFM_FUNCTION SetTrackGWorld
  924.     ENDIF
  925.  
  926. ;
  927. ; pascal PicHandle GetMoviePict(Movie theMovie, TimeValue time)
  928. ;
  929.     IF ¬ GENERATINGCFM THEN
  930.         Macro
  931.         _GetMoviePict
  932.             moveq               #29,d0
  933.             dc.w                $AAAA
  934.         EndM
  935.     ELSE
  936.         IMPORT_CFM_FUNCTION GetMoviePict
  937.     ENDIF
  938.  
  939. ;
  940. ; pascal PicHandle GetTrackPict(Track theTrack, TimeValue time)
  941. ;
  942.     IF ¬ GENERATINGCFM THEN
  943.         Macro
  944.         _GetTrackPict
  945.             moveq               #30,d0
  946.             dc.w                $AAAA
  947.         EndM
  948.     ELSE
  949.         IMPORT_CFM_FUNCTION GetTrackPict
  950.     ENDIF
  951.  
  952. ;
  953. ; pascal PicHandle GetMoviePosterPict(Movie theMovie)
  954. ;
  955.     IF ¬ GENERATINGCFM THEN
  956.         Macro
  957.         _GetMoviePosterPict
  958.             move.w              #$00F7,d0
  959.             dc.w                $AAAA
  960.         EndM
  961.     ELSE
  962.         IMPORT_CFM_FUNCTION GetMoviePosterPict
  963.     ENDIF
  964.  
  965. ;  called between Begin & EndUpdate 
  966. ;
  967. ; pascal OSErr UpdateMovie(Movie theMovie)
  968. ;
  969.     IF ¬ GENERATINGCFM THEN
  970.         Macro
  971.         _UpdateMovie
  972.             moveq               #31,d0
  973.             dc.w                $AAAA
  974.         EndM
  975.     ELSE
  976.         IMPORT_CFM_FUNCTION UpdateMovie
  977.     ENDIF
  978.  
  979. ;
  980. ; pascal OSErr InvalidateMovieRegion(Movie theMovie, RgnHandle invalidRgn)
  981. ;
  982.     IF ¬ GENERATINGCFM THEN
  983.         Macro
  984.         _InvalidateMovieRegion
  985.             move.w              #$022A,d0
  986.             dc.w                $AAAA
  987.         EndM
  988.     ELSE
  989.         IMPORT_CFM_FUNCTION InvalidateMovieRegion
  990.     ENDIF
  991.  
  992. ; *** spatial movie routines ***
  993. ;
  994. ; pascal void GetMovieBox(Movie theMovie, Rect *boxRect)
  995. ;
  996.     IF ¬ GENERATINGCFM THEN
  997.         Macro
  998.         _GetMovieBox
  999.             move.w              #$00F9,d0
  1000.             dc.w                $AAAA
  1001.         EndM
  1002.     ELSE
  1003.         IMPORT_CFM_FUNCTION GetMovieBox
  1004.     ENDIF
  1005.  
  1006. ;
  1007. ; pascal void SetMovieBox(Movie theMovie, const Rect *boxRect)
  1008. ;
  1009.     IF ¬ GENERATINGCFM THEN
  1010.         Macro
  1011.         _SetMovieBox
  1012.             move.w              #$00FA,d0
  1013.             dc.w                $AAAA
  1014.         EndM
  1015.     ELSE
  1016.         IMPORT_CFM_FUNCTION SetMovieBox
  1017.     ENDIF
  1018.  
  1019. ; * movie display clip 
  1020. ;
  1021. ; pascal RgnHandle GetMovieDisplayClipRgn(Movie theMovie)
  1022. ;
  1023.     IF ¬ GENERATINGCFM THEN
  1024.         Macro
  1025.         _GetMovieDisplayClipRgn
  1026.             move.w              #$00FC,d0
  1027.             dc.w                $AAAA
  1028.         EndM
  1029.     ELSE
  1030.         IMPORT_CFM_FUNCTION GetMovieDisplayClipRgn
  1031.     ENDIF
  1032.  
  1033. ;
  1034. ; pascal void SetMovieDisplayClipRgn(Movie theMovie, RgnHandle theClip)
  1035. ;
  1036.     IF ¬ GENERATINGCFM THEN
  1037.         Macro
  1038.         _SetMovieDisplayClipRgn
  1039.             move.w              #$00FD,d0
  1040.             dc.w                $AAAA
  1041.         EndM
  1042.     ELSE
  1043.         IMPORT_CFM_FUNCTION SetMovieDisplayClipRgn
  1044.     ENDIF
  1045.  
  1046. ; * movie src clip 
  1047. ;
  1048. ; pascal RgnHandle GetMovieClipRgn(Movie theMovie)
  1049. ;
  1050.     IF ¬ GENERATINGCFM THEN
  1051.         Macro
  1052.         _GetMovieClipRgn
  1053.             move.w              #$0100,d0
  1054.             dc.w                $AAAA
  1055.         EndM
  1056.     ELSE
  1057.         IMPORT_CFM_FUNCTION GetMovieClipRgn
  1058.     ENDIF
  1059.  
  1060. ;
  1061. ; pascal void SetMovieClipRgn(Movie theMovie, RgnHandle theClip)
  1062. ;
  1063.     IF ¬ GENERATINGCFM THEN
  1064.         Macro
  1065.         _SetMovieClipRgn
  1066.             move.w              #$0101,d0
  1067.             dc.w                $AAAA
  1068.         EndM
  1069.     ELSE
  1070.         IMPORT_CFM_FUNCTION SetMovieClipRgn
  1071.     ENDIF
  1072.  
  1073. ; * track src clip 
  1074. ;
  1075. ; pascal RgnHandle GetTrackClipRgn(Track theTrack)
  1076. ;
  1077.     IF ¬ GENERATINGCFM THEN
  1078.         Macro
  1079.         _GetTrackClipRgn
  1080.             move.w              #$0102,d0
  1081.             dc.w                $AAAA
  1082.         EndM
  1083.     ELSE
  1084.         IMPORT_CFM_FUNCTION GetTrackClipRgn
  1085.     ENDIF
  1086.  
  1087. ;
  1088. ; pascal void SetTrackClipRgn(Track theTrack, RgnHandle theClip)
  1089. ;
  1090.     IF ¬ GENERATINGCFM THEN
  1091.         Macro
  1092.         _SetTrackClipRgn
  1093.             move.w              #$0103,d0
  1094.             dc.w                $AAAA
  1095.         EndM
  1096.     ELSE
  1097.         IMPORT_CFM_FUNCTION SetTrackClipRgn
  1098.     ENDIF
  1099.  
  1100. ; * bounds in display space (not clipped by display clip) 
  1101. ;
  1102. ; pascal RgnHandle GetMovieDisplayBoundsRgn(Movie theMovie)
  1103. ;
  1104.     IF ¬ GENERATINGCFM THEN
  1105.         Macro
  1106.         _GetMovieDisplayBoundsRgn
  1107.             move.w              #$00FB,d0
  1108.             dc.w                $AAAA
  1109.         EndM
  1110.     ELSE
  1111.         IMPORT_CFM_FUNCTION GetMovieDisplayBoundsRgn
  1112.     ENDIF
  1113.  
  1114. ;
  1115. ; pascal RgnHandle GetTrackDisplayBoundsRgn(Track theTrack)
  1116. ;
  1117.     IF ¬ GENERATINGCFM THEN
  1118.         Macro
  1119.         _GetTrackDisplayBoundsRgn
  1120.             move.w              #$0112,d0
  1121.             dc.w                $AAAA
  1122.         EndM
  1123.     ELSE
  1124.         IMPORT_CFM_FUNCTION GetTrackDisplayBoundsRgn
  1125.     ENDIF
  1126.  
  1127. ; * bounds in movie space 
  1128. ;
  1129. ; pascal RgnHandle GetMovieBoundsRgn(Movie theMovie)
  1130. ;
  1131.     IF ¬ GENERATINGCFM THEN
  1132.         Macro
  1133.         _GetMovieBoundsRgn
  1134.             move.w              #$00FE,d0
  1135.             dc.w                $AAAA
  1136.         EndM
  1137.     ELSE
  1138.         IMPORT_CFM_FUNCTION GetMovieBoundsRgn
  1139.     ENDIF
  1140.  
  1141. ;
  1142. ; pascal RgnHandle GetTrackMovieBoundsRgn(Track theTrack)
  1143. ;
  1144.     IF ¬ GENERATINGCFM THEN
  1145.         Macro
  1146.         _GetTrackMovieBoundsRgn
  1147.             move.w              #$00FF,d0
  1148.             dc.w                $AAAA
  1149.         EndM
  1150.     ELSE
  1151.         IMPORT_CFM_FUNCTION GetTrackMovieBoundsRgn
  1152.     ENDIF
  1153.  
  1154. ; * bounds in track space 
  1155. ;
  1156. ; pascal RgnHandle GetTrackBoundsRgn(Track theTrack)
  1157. ;
  1158.     IF ¬ GENERATINGCFM THEN
  1159.         Macro
  1160.         _GetTrackBoundsRgn
  1161.             move.w              #$0111,d0
  1162.             dc.w                $AAAA
  1163.         EndM
  1164.     ELSE
  1165.         IMPORT_CFM_FUNCTION GetTrackBoundsRgn
  1166.     ENDIF
  1167.  
  1168. ; * mattes - always in track space 
  1169. ;
  1170. ; pascal PixMapHandle GetTrackMatte(Track theTrack)
  1171. ;
  1172.     IF ¬ GENERATINGCFM THEN
  1173.         Macro
  1174.         _GetTrackMatte
  1175.             move.w              #$0115,d0
  1176.             dc.w                $AAAA
  1177.         EndM
  1178.     ELSE
  1179.         IMPORT_CFM_FUNCTION GetTrackMatte
  1180.     ENDIF
  1181.  
  1182. ;
  1183. ; pascal void SetTrackMatte(Track theTrack, PixMapHandle theMatte)
  1184. ;
  1185.     IF ¬ GENERATINGCFM THEN
  1186.         Macro
  1187.         _SetTrackMatte
  1188.             move.w              #$0116,d0
  1189.             dc.w                $AAAA
  1190.         EndM
  1191.     ELSE
  1192.         IMPORT_CFM_FUNCTION SetTrackMatte
  1193.     ENDIF
  1194.  
  1195. ;
  1196. ; pascal void DisposeMatte(PixMapHandle theMatte)
  1197. ;
  1198.     IF ¬ GENERATINGCFM THEN
  1199.         Macro
  1200.         _DisposeMatte
  1201.             move.w              #$014A,d0
  1202.             dc.w                $AAAA
  1203.         EndM
  1204.     ELSE
  1205.         IMPORT_CFM_FUNCTION DisposeMatte
  1206.     ENDIF
  1207.  
  1208. ;
  1209. ;************************
  1210. ;* calls for getting/saving movies
  1211. ;*************************
  1212. ;
  1213. ;
  1214. ; pascal Movie NewMovie(long flags)
  1215. ;
  1216.     IF ¬ GENERATINGCFM THEN
  1217.         Macro
  1218.         _NewMovie
  1219.             move.w              #$0187,d0
  1220.             dc.w                $AAAA
  1221.         EndM
  1222.     ELSE
  1223.         IMPORT_CFM_FUNCTION NewMovie
  1224.     ENDIF
  1225.  
  1226. ;
  1227. ; pascal OSErr PutMovieIntoHandle(Movie theMovie, Handle publicMovie)
  1228. ;
  1229.     IF ¬ GENERATINGCFM THEN
  1230.         Macro
  1231.         _PutMovieIntoHandle
  1232.             moveq               #34,d0
  1233.             dc.w                $AAAA
  1234.         EndM
  1235.     ELSE
  1236.         IMPORT_CFM_FUNCTION PutMovieIntoHandle
  1237.     ENDIF
  1238.  
  1239. ;
  1240. ; pascal OSErr PutMovieIntoDataFork(Movie theMovie, short fRefNum, long offset, long maxSize)
  1241. ;
  1242.     IF ¬ GENERATINGCFM THEN
  1243.         Macro
  1244.         _PutMovieIntoDataFork
  1245.             move.w              #$01B4,d0
  1246.             dc.w                $AAAA
  1247.         EndM
  1248.     ELSE
  1249.         IMPORT_CFM_FUNCTION PutMovieIntoDataFork
  1250.     ENDIF
  1251.  
  1252. ;
  1253. ; pascal void DisposeMovie(Movie theMovie)
  1254. ;
  1255.     IF ¬ GENERATINGCFM THEN
  1256.         Macro
  1257.         _DisposeMovie
  1258.             moveq               #35,d0
  1259.             dc.w                $AAAA
  1260.         EndM
  1261.     ELSE
  1262.         IMPORT_CFM_FUNCTION DisposeMovie
  1263.     ENDIF
  1264.  
  1265. ;
  1266. ;************************
  1267. ;* Movie State Routines
  1268. ;*************************
  1269. ;
  1270. ;
  1271. ; pascal unsigned long GetMovieCreationTime(Movie theMovie)
  1272. ;
  1273.     IF ¬ GENERATINGCFM THEN
  1274.         Macro
  1275.         _GetMovieCreationTime
  1276.             moveq               #38,d0
  1277.             dc.w                $AAAA
  1278.         EndM
  1279.     ELSE
  1280.         IMPORT_CFM_FUNCTION GetMovieCreationTime
  1281.     ENDIF
  1282.  
  1283. ;
  1284. ; pascal unsigned long GetMovieModificationTime(Movie theMovie)
  1285. ;
  1286.     IF ¬ GENERATINGCFM THEN
  1287.         Macro
  1288.         _GetMovieModificationTime
  1289.             moveq               #39,d0
  1290.             dc.w                $AAAA
  1291.         EndM
  1292.     ELSE
  1293.         IMPORT_CFM_FUNCTION GetMovieModificationTime
  1294.     ENDIF
  1295.  
  1296. ;
  1297. ; pascal TimeScale GetMovieTimeScale(Movie theMovie)
  1298. ;
  1299.     IF ¬ GENERATINGCFM THEN
  1300.         Macro
  1301.         _GetMovieTimeScale
  1302.             moveq               #41,d0
  1303.             dc.w                $AAAA
  1304.         EndM
  1305.     ELSE
  1306.         IMPORT_CFM_FUNCTION GetMovieTimeScale
  1307.     ENDIF
  1308.  
  1309. ;
  1310. ; pascal void SetMovieTimeScale(Movie theMovie, TimeScale timeScale)
  1311. ;
  1312.     IF ¬ GENERATINGCFM THEN
  1313.         Macro
  1314.         _SetMovieTimeScale
  1315.             moveq               #42,d0
  1316.             dc.w                $AAAA
  1317.         EndM
  1318.     ELSE
  1319.         IMPORT_CFM_FUNCTION SetMovieTimeScale
  1320.     ENDIF
  1321.  
  1322. ;
  1323. ; pascal TimeValue GetMovieDuration(Movie theMovie)
  1324. ;
  1325.     IF ¬ GENERATINGCFM THEN
  1326.         Macro
  1327.         _GetMovieDuration
  1328.             moveq               #43,d0
  1329.             dc.w                $AAAA
  1330.         EndM
  1331.     ELSE
  1332.         IMPORT_CFM_FUNCTION GetMovieDuration
  1333.     ENDIF
  1334.  
  1335. ;
  1336. ; pascal Fixed GetMovieRate(Movie theMovie)
  1337. ;
  1338.     IF ¬ GENERATINGCFM THEN
  1339.         Macro
  1340.         _GetMovieRate
  1341.             moveq               #44,d0
  1342.             dc.w                $AAAA
  1343.         EndM
  1344.     ELSE
  1345.         IMPORT_CFM_FUNCTION GetMovieRate
  1346.     ENDIF
  1347.  
  1348. ;
  1349. ; pascal void SetMovieRate(Movie theMovie, Fixed rate)
  1350. ;
  1351.     IF ¬ GENERATINGCFM THEN
  1352.         Macro
  1353.         _SetMovieRate
  1354.             moveq               #45,d0
  1355.             dc.w                $AAAA
  1356.         EndM
  1357.     ELSE
  1358.         IMPORT_CFM_FUNCTION SetMovieRate
  1359.     ENDIF
  1360.  
  1361. ;
  1362. ; pascal Fixed GetMoviePreferredRate(Movie theMovie)
  1363. ;
  1364.     IF ¬ GENERATINGCFM THEN
  1365.         Macro
  1366.         _GetMoviePreferredRate
  1367.             move.w              #$00F3,d0
  1368.             dc.w                $AAAA
  1369.         EndM
  1370.     ELSE
  1371.         IMPORT_CFM_FUNCTION GetMoviePreferredRate
  1372.     ENDIF
  1373.  
  1374. ;
  1375. ; pascal void SetMoviePreferredRate(Movie theMovie, Fixed rate)
  1376. ;
  1377.     IF ¬ GENERATINGCFM THEN
  1378.         Macro
  1379.         _SetMoviePreferredRate
  1380.             move.w              #$00F4,d0
  1381.             dc.w                $AAAA
  1382.         EndM
  1383.     ELSE
  1384.         IMPORT_CFM_FUNCTION SetMoviePreferredRate
  1385.     ENDIF
  1386.  
  1387. ;
  1388. ; pascal short GetMoviePreferredVolume(Movie theMovie)
  1389. ;
  1390.     IF ¬ GENERATINGCFM THEN
  1391.         Macro
  1392.         _GetMoviePreferredVolume
  1393.             move.w              #$00F5,d0
  1394.             dc.w                $AAAA
  1395.         EndM
  1396.     ELSE
  1397.         IMPORT_CFM_FUNCTION GetMoviePreferredVolume
  1398.     ENDIF
  1399.  
  1400. ;
  1401. ; pascal void SetMoviePreferredVolume(Movie theMovie, short volume)
  1402. ;
  1403.     IF ¬ GENERATINGCFM THEN
  1404.         Macro
  1405.         _SetMoviePreferredVolume
  1406.             move.w              #$00F6,d0
  1407.             dc.w                $AAAA
  1408.         EndM
  1409.     ELSE
  1410.         IMPORT_CFM_FUNCTION SetMoviePreferredVolume
  1411.     ENDIF
  1412.  
  1413. ;
  1414. ; pascal short GetMovieVolume(Movie theMovie)
  1415. ;
  1416.     IF ¬ GENERATINGCFM THEN
  1417.         Macro
  1418.         _GetMovieVolume
  1419.             moveq               #46,d0
  1420.             dc.w                $AAAA
  1421.         EndM
  1422.     ELSE
  1423.         IMPORT_CFM_FUNCTION GetMovieVolume
  1424.     ENDIF
  1425.  
  1426. ;
  1427. ; pascal void SetMovieVolume(Movie theMovie, short volume)
  1428. ;
  1429.     IF ¬ GENERATINGCFM THEN
  1430.         Macro
  1431.         _SetMovieVolume
  1432.             moveq               #47,d0
  1433.             dc.w                $AAAA
  1434.         EndM
  1435.     ELSE
  1436.         IMPORT_CFM_FUNCTION SetMovieVolume
  1437.     ENDIF
  1438.  
  1439. ;
  1440. ; pascal void GetMovieMatrix(Movie theMovie, MatrixRecord *matrix)
  1441. ;
  1442.     IF ¬ GENERATINGCFM THEN
  1443.         Macro
  1444.         _GetMovieMatrix
  1445.             moveq               #49,d0
  1446.             dc.w                $AAAA
  1447.         EndM
  1448.     ELSE
  1449.         IMPORT_CFM_FUNCTION GetMovieMatrix
  1450.     ENDIF
  1451.  
  1452. ;
  1453. ; pascal void SetMovieMatrix(Movie theMovie, const MatrixRecord *matrix)
  1454. ;
  1455.     IF ¬ GENERATINGCFM THEN
  1456.         Macro
  1457.         _SetMovieMatrix
  1458.             moveq               #50,d0
  1459.             dc.w                $AAAA
  1460.         EndM
  1461.     ELSE
  1462.         IMPORT_CFM_FUNCTION SetMovieMatrix
  1463.     ENDIF
  1464.  
  1465. ;
  1466. ; pascal void GetMoviePreviewTime(Movie theMovie, TimeValue *previewTime, TimeValue *previewDuration)
  1467. ;
  1468.     IF ¬ GENERATINGCFM THEN
  1469.         Macro
  1470.         _GetMoviePreviewTime
  1471.             moveq               #51,d0
  1472.             dc.w                $AAAA
  1473.         EndM
  1474.     ELSE
  1475.         IMPORT_CFM_FUNCTION GetMoviePreviewTime
  1476.     ENDIF
  1477.  
  1478. ;
  1479. ; pascal void SetMoviePreviewTime(Movie theMovie, TimeValue previewTime, TimeValue previewDuration)
  1480. ;
  1481.     IF ¬ GENERATINGCFM THEN
  1482.         Macro
  1483.         _SetMoviePreviewTime
  1484.             moveq               #52,d0
  1485.             dc.w                $AAAA
  1486.         EndM
  1487.     ELSE
  1488.         IMPORT_CFM_FUNCTION SetMoviePreviewTime
  1489.     ENDIF
  1490.  
  1491. ;
  1492. ; pascal TimeValue GetMoviePosterTime(Movie theMovie)
  1493. ;
  1494.     IF ¬ GENERATINGCFM THEN
  1495.         Macro
  1496.         _GetMoviePosterTime
  1497.             moveq               #53,d0
  1498.             dc.w                $AAAA
  1499.         EndM
  1500.     ELSE
  1501.         IMPORT_CFM_FUNCTION GetMoviePosterTime
  1502.     ENDIF
  1503.  
  1504. ;
  1505. ; pascal void SetMoviePosterTime(Movie theMovie, TimeValue posterTime)
  1506. ;
  1507.     IF ¬ GENERATINGCFM THEN
  1508.         Macro
  1509.         _SetMoviePosterTime
  1510.             moveq               #54,d0
  1511.             dc.w                $AAAA
  1512.         EndM
  1513.     ELSE
  1514.         IMPORT_CFM_FUNCTION SetMoviePosterTime
  1515.     ENDIF
  1516.  
  1517. ;
  1518. ; pascal void GetMovieSelection(Movie theMovie, TimeValue *selectionTime, TimeValue *selectionDuration)
  1519. ;
  1520.     IF ¬ GENERATINGCFM THEN
  1521.         Macro
  1522.         _GetMovieSelection
  1523.             moveq               #55,d0
  1524.             dc.w                $AAAA
  1525.         EndM
  1526.     ELSE
  1527.         IMPORT_CFM_FUNCTION GetMovieSelection
  1528.     ENDIF
  1529.  
  1530. ;
  1531. ; pascal void SetMovieSelection(Movie theMovie, TimeValue selectionTime, TimeValue selectionDuration)
  1532. ;
  1533.     IF ¬ GENERATINGCFM THEN
  1534.         Macro
  1535.         _SetMovieSelection
  1536.             moveq               #56,d0
  1537.             dc.w                $AAAA
  1538.         EndM
  1539.     ELSE
  1540.         IMPORT_CFM_FUNCTION SetMovieSelection
  1541.     ENDIF
  1542.  
  1543. ;
  1544. ; pascal void SetMovieActiveSegment(Movie theMovie, TimeValue startTime, TimeValue duration)
  1545. ;
  1546.     IF ¬ GENERATINGCFM THEN
  1547.         Macro
  1548.         _SetMovieActiveSegment
  1549.             move.w              #$015C,d0
  1550.             dc.w                $AAAA
  1551.         EndM
  1552.     ELSE
  1553.         IMPORT_CFM_FUNCTION SetMovieActiveSegment
  1554.     ENDIF
  1555.  
  1556. ;
  1557. ; pascal void GetMovieActiveSegment(Movie theMovie, TimeValue *startTime, TimeValue *duration)
  1558. ;
  1559.     IF ¬ GENERATINGCFM THEN
  1560.         Macro
  1561.         _GetMovieActiveSegment
  1562.             move.w              #$015D,d0
  1563.             dc.w                $AAAA
  1564.         EndM
  1565.     ELSE
  1566.         IMPORT_CFM_FUNCTION GetMovieActiveSegment
  1567.     ENDIF
  1568.  
  1569. ;
  1570. ; pascal TimeValue GetMovieTime(Movie theMovie, TimeRecord *currentTime)
  1571. ;
  1572.     IF ¬ GENERATINGCFM THEN
  1573.         Macro
  1574.         _GetMovieTime
  1575.             moveq               #57,d0
  1576.             dc.w                $AAAA
  1577.         EndM
  1578.     ELSE
  1579.         IMPORT_CFM_FUNCTION GetMovieTime
  1580.     ENDIF
  1581.  
  1582. ;
  1583. ; pascal void SetMovieTime(Movie theMovie, const TimeRecord *newtime)
  1584. ;
  1585.     IF ¬ GENERATINGCFM THEN
  1586.         Macro
  1587.         _SetMovieTime
  1588.             moveq               #60,d0
  1589.             dc.w                $AAAA
  1590.         EndM
  1591.     ELSE
  1592.         IMPORT_CFM_FUNCTION SetMovieTime
  1593.     ENDIF
  1594.  
  1595. ;
  1596. ; pascal void SetMovieTimeValue(Movie theMovie, TimeValue newtime)
  1597. ;
  1598.     IF ¬ GENERATINGCFM THEN
  1599.         Macro
  1600.         _SetMovieTimeValue
  1601.             moveq               #61,d0
  1602.             dc.w                $AAAA
  1603.         EndM
  1604.     ELSE
  1605.         IMPORT_CFM_FUNCTION SetMovieTimeValue
  1606.     ENDIF
  1607.  
  1608. ;
  1609. ; pascal UserData GetMovieUserData(Movie theMovie)
  1610. ;
  1611.     IF ¬ GENERATINGCFM THEN
  1612.         Macro
  1613.         _GetMovieUserData
  1614.             moveq               #62,d0
  1615.             dc.w                $AAAA
  1616.         EndM
  1617.     ELSE
  1618.         IMPORT_CFM_FUNCTION GetMovieUserData
  1619.     ENDIF
  1620.  
  1621. ;
  1622. ;************************
  1623. ;* Track/Media finding routines
  1624. ;*************************
  1625. ;
  1626. ;
  1627. ; pascal long GetMovieTrackCount(Movie theMovie)
  1628. ;
  1629.     IF ¬ GENERATINGCFM THEN
  1630.         Macro
  1631.         _GetMovieTrackCount
  1632.             moveq               #63,d0
  1633.             dc.w                $AAAA
  1634.         EndM
  1635.     ELSE
  1636.         IMPORT_CFM_FUNCTION GetMovieTrackCount
  1637.     ENDIF
  1638.  
  1639. ;
  1640. ; pascal Track GetMovieTrack(Movie theMovie, long trackID)
  1641. ;
  1642.     IF ¬ GENERATINGCFM THEN
  1643.         Macro
  1644.         _GetMovieTrack
  1645.             moveq               #64,d0
  1646.             dc.w                $AAAA
  1647.         EndM
  1648.     ELSE
  1649.         IMPORT_CFM_FUNCTION GetMovieTrack
  1650.     ENDIF
  1651.  
  1652. ;
  1653. ; pascal Track GetMovieIndTrack(Movie theMovie, long index)
  1654. ;
  1655.     IF ¬ GENERATINGCFM THEN
  1656.         Macro
  1657.         _GetMovieIndTrack
  1658.             move.w              #$0117,d0
  1659.             dc.w                $AAAA
  1660.         EndM
  1661.     ELSE
  1662.         IMPORT_CFM_FUNCTION GetMovieIndTrack
  1663.     ENDIF
  1664.  
  1665. ;
  1666. ; pascal Track GetMovieIndTrackType(Movie theMovie, long index, OSType trackType, long flags)
  1667. ;
  1668.     IF ¬ GENERATINGCFM THEN
  1669.         Macro
  1670.         _GetMovieIndTrackType
  1671.             move.w              #$0208,d0
  1672.             dc.w                $AAAA
  1673.         EndM
  1674.     ELSE
  1675.         IMPORT_CFM_FUNCTION GetMovieIndTrackType
  1676.     ENDIF
  1677.  
  1678. ;
  1679. ; pascal long GetTrackID(Track theTrack)
  1680. ;
  1681.     IF ¬ GENERATINGCFM THEN
  1682.         Macro
  1683.         _GetTrackID
  1684.             move.w              #$0127,d0
  1685.             dc.w                $AAAA
  1686.         EndM
  1687.     ELSE
  1688.         IMPORT_CFM_FUNCTION GetTrackID
  1689.     ENDIF
  1690.  
  1691. ;
  1692. ; pascal Movie GetTrackMovie(Track theTrack)
  1693. ;
  1694.     IF ¬ GENERATINGCFM THEN
  1695.         Macro
  1696.         _GetTrackMovie
  1697.             move.w              #$00D0,d0
  1698.             dc.w                $AAAA
  1699.         EndM
  1700.     ELSE
  1701.         IMPORT_CFM_FUNCTION GetTrackMovie
  1702.     ENDIF
  1703.  
  1704. ;
  1705. ;************************
  1706. ;* Track creation routines
  1707. ;*************************
  1708. ;
  1709. ;
  1710. ; pascal Track NewMovieTrack(Movie theMovie, Fixed width, Fixed height, short trackVolume)
  1711. ;
  1712.     IF ¬ GENERATINGCFM THEN
  1713.         Macro
  1714.         _NewMovieTrack
  1715.             move.w              #$0188,d0
  1716.             dc.w                $AAAA
  1717.         EndM
  1718.     ELSE
  1719.         IMPORT_CFM_FUNCTION NewMovieTrack
  1720.     ENDIF
  1721.  
  1722. ;
  1723. ; pascal void DisposeMovieTrack(Track theTrack)
  1724. ;
  1725.     IF ¬ GENERATINGCFM THEN
  1726.         Macro
  1727.         _DisposeMovieTrack
  1728.             moveq               #66,d0
  1729.             dc.w                $AAAA
  1730.         EndM
  1731.     ELSE
  1732.         IMPORT_CFM_FUNCTION DisposeMovieTrack
  1733.     ENDIF
  1734.  
  1735. ;
  1736. ;************************
  1737. ;* Track State routines
  1738. ;*************************
  1739. ;
  1740. ;
  1741. ; pascal unsigned long GetTrackCreationTime(Track theTrack)
  1742. ;
  1743.     IF ¬ GENERATINGCFM THEN
  1744.         Macro
  1745.         _GetTrackCreationTime
  1746.             moveq               #67,d0
  1747.             dc.w                $AAAA
  1748.         EndM
  1749.     ELSE
  1750.         IMPORT_CFM_FUNCTION GetTrackCreationTime
  1751.     ENDIF
  1752.  
  1753. ;
  1754. ; pascal unsigned long GetTrackModificationTime(Track theTrack)
  1755. ;
  1756.     IF ¬ GENERATINGCFM THEN
  1757.         Macro
  1758.         _GetTrackModificationTime
  1759.             moveq               #68,d0
  1760.             dc.w                $AAAA
  1761.         EndM
  1762.     ELSE
  1763.         IMPORT_CFM_FUNCTION GetTrackModificationTime
  1764.     ENDIF
  1765.  
  1766. ;
  1767. ; pascal Boolean GetTrackEnabled(Track theTrack)
  1768. ;
  1769.     IF ¬ GENERATINGCFM THEN
  1770.         Macro
  1771.         _GetTrackEnabled
  1772.             moveq               #69,d0
  1773.             dc.w                $AAAA
  1774.         EndM
  1775.     ELSE
  1776.         IMPORT_CFM_FUNCTION GetTrackEnabled
  1777.     ENDIF
  1778.  
  1779. ;
  1780. ; pascal void SetTrackEnabled(Track theTrack, Boolean isEnabled)
  1781. ;
  1782.     IF ¬ GENERATINGCFM THEN
  1783.         Macro
  1784.         _SetTrackEnabled
  1785.             moveq               #70,d0
  1786.             dc.w                $AAAA
  1787.         EndM
  1788.     ELSE
  1789.         IMPORT_CFM_FUNCTION SetTrackEnabled
  1790.     ENDIF
  1791.  
  1792. ;
  1793. ; pascal long GetTrackUsage(Track theTrack)
  1794. ;
  1795.     IF ¬ GENERATINGCFM THEN
  1796.         Macro
  1797.         _GetTrackUsage
  1798.             moveq               #71,d0
  1799.             dc.w                $AAAA
  1800.         EndM
  1801.     ELSE
  1802.         IMPORT_CFM_FUNCTION GetTrackUsage
  1803.     ENDIF
  1804.  
  1805. ;
  1806. ; pascal void SetTrackUsage(Track theTrack, long usage)
  1807. ;
  1808.     IF ¬ GENERATINGCFM THEN
  1809.         Macro
  1810.         _SetTrackUsage
  1811.             moveq               #72,d0
  1812.             dc.w                $AAAA
  1813.         EndM
  1814.     ELSE
  1815.         IMPORT_CFM_FUNCTION SetTrackUsage
  1816.     ENDIF
  1817.  
  1818. ;
  1819. ; pascal TimeValue GetTrackDuration(Track theTrack)
  1820. ;
  1821.     IF ¬ GENERATINGCFM THEN
  1822.         Macro
  1823.         _GetTrackDuration
  1824.             moveq               #75,d0
  1825.             dc.w                $AAAA
  1826.         EndM
  1827.     ELSE
  1828.         IMPORT_CFM_FUNCTION GetTrackDuration
  1829.     ENDIF
  1830.  
  1831. ;
  1832. ; pascal TimeValue GetTrackOffset(Track theTrack)
  1833. ;
  1834.     IF ¬ GENERATINGCFM THEN
  1835.         Macro
  1836.         _GetTrackOffset
  1837.             moveq               #76,d0
  1838.             dc.w                $AAAA
  1839.         EndM
  1840.     ELSE
  1841.         IMPORT_CFM_FUNCTION GetTrackOffset
  1842.     ENDIF
  1843.  
  1844. ;
  1845. ; pascal void SetTrackOffset(Track theTrack, TimeValue movieOffsetTime)
  1846. ;
  1847.     IF ¬ GENERATINGCFM THEN
  1848.         Macro
  1849.         _SetTrackOffset
  1850.             moveq               #77,d0
  1851.             dc.w                $AAAA
  1852.         EndM
  1853.     ELSE
  1854.         IMPORT_CFM_FUNCTION SetTrackOffset
  1855.     ENDIF
  1856.  
  1857. ;
  1858. ; pascal short GetTrackLayer(Track theTrack)
  1859. ;
  1860.     IF ¬ GENERATINGCFM THEN
  1861.         Macro
  1862.         _GetTrackLayer
  1863.             moveq               #80,d0
  1864.             dc.w                $AAAA
  1865.         EndM
  1866.     ELSE
  1867.         IMPORT_CFM_FUNCTION GetTrackLayer
  1868.     ENDIF
  1869.  
  1870. ;
  1871. ; pascal void SetTrackLayer(Track theTrack, short layer)
  1872. ;
  1873.     IF ¬ GENERATINGCFM THEN
  1874.         Macro
  1875.         _SetTrackLayer
  1876.             moveq               #81,d0
  1877.             dc.w                $AAAA
  1878.         EndM
  1879.     ELSE
  1880.         IMPORT_CFM_FUNCTION SetTrackLayer
  1881.     ENDIF
  1882.  
  1883. ;
  1884. ; pascal Track GetTrackAlternate(Track theTrack)
  1885. ;
  1886.     IF ¬ GENERATINGCFM THEN
  1887.         Macro
  1888.         _GetTrackAlternate
  1889.             moveq               #82,d0
  1890.             dc.w                $AAAA
  1891.         EndM
  1892.     ELSE
  1893.         IMPORT_CFM_FUNCTION GetTrackAlternate
  1894.     ENDIF
  1895.  
  1896. ;
  1897. ; pascal void SetTrackAlternate(Track theTrack, Track alternateT)
  1898. ;
  1899.     IF ¬ GENERATINGCFM THEN
  1900.         Macro
  1901.         _SetTrackAlternate
  1902.             moveq               #83,d0
  1903.             dc.w                $AAAA
  1904.         EndM
  1905.     ELSE
  1906.         IMPORT_CFM_FUNCTION SetTrackAlternate
  1907.     ENDIF
  1908.  
  1909. ;
  1910. ; pascal void SetAutoTrackAlternatesEnabled(Movie theMovie, Boolean enable)
  1911. ;
  1912.     IF ¬ GENERATINGCFM THEN
  1913.         Macro
  1914.         _SetAutoTrackAlternatesEnabled
  1915.             move.w              #$015E,d0
  1916.             dc.w                $AAAA
  1917.         EndM
  1918.     ELSE
  1919.         IMPORT_CFM_FUNCTION SetAutoTrackAlternatesEnabled
  1920.     ENDIF
  1921.  
  1922. ;
  1923. ; pascal void SelectMovieAlternates(Movie theMovie)
  1924. ;
  1925.     IF ¬ GENERATINGCFM THEN
  1926.         Macro
  1927.         _SelectMovieAlternates
  1928.             move.w              #$015F,d0
  1929.             dc.w                $AAAA
  1930.         EndM
  1931.     ELSE
  1932.         IMPORT_CFM_FUNCTION SelectMovieAlternates
  1933.     ENDIF
  1934.  
  1935. ;
  1936. ; pascal short GetTrackVolume(Track theTrack)
  1937. ;
  1938.     IF ¬ GENERATINGCFM THEN
  1939.         Macro
  1940.         _GetTrackVolume
  1941.             moveq               #84,d0
  1942.             dc.w                $AAAA
  1943.         EndM
  1944.     ELSE
  1945.         IMPORT_CFM_FUNCTION GetTrackVolume
  1946.     ENDIF
  1947.  
  1948. ;
  1949. ; pascal void SetTrackVolume(Track theTrack, short volume)
  1950. ;
  1951.     IF ¬ GENERATINGCFM THEN
  1952.         Macro
  1953.         _SetTrackVolume
  1954.             moveq               #85,d0
  1955.             dc.w                $AAAA
  1956.         EndM
  1957.     ELSE
  1958.         IMPORT_CFM_FUNCTION SetTrackVolume
  1959.     ENDIF
  1960.  
  1961. ;
  1962. ; pascal void GetTrackMatrix(Track theTrack, MatrixRecord *matrix)
  1963. ;
  1964.     IF ¬ GENERATINGCFM THEN
  1965.         Macro
  1966.         _GetTrackMatrix
  1967.             moveq               #86,d0
  1968.             dc.w                $AAAA
  1969.         EndM
  1970.     ELSE
  1971.         IMPORT_CFM_FUNCTION GetTrackMatrix
  1972.     ENDIF
  1973.  
  1974. ;
  1975. ; pascal void SetTrackMatrix(Track theTrack, const MatrixRecord *matrix)
  1976. ;
  1977.     IF ¬ GENERATINGCFM THEN
  1978.         Macro
  1979.         _SetTrackMatrix
  1980.             moveq               #87,d0
  1981.             dc.w                $AAAA
  1982.         EndM
  1983.     ELSE
  1984.         IMPORT_CFM_FUNCTION SetTrackMatrix
  1985.     ENDIF
  1986.  
  1987. ;
  1988. ; pascal void GetTrackDimensions(Track theTrack, Fixed *width, Fixed *height)
  1989. ;
  1990.     IF ¬ GENERATINGCFM THEN
  1991.         Macro
  1992.         _GetTrackDimensions
  1993.             moveq               #93,d0
  1994.             dc.w                $AAAA
  1995.         EndM
  1996.     ELSE
  1997.         IMPORT_CFM_FUNCTION GetTrackDimensions
  1998.     ENDIF
  1999.  
  2000. ;
  2001. ; pascal void SetTrackDimensions(Track theTrack, Fixed width, Fixed height)
  2002. ;
  2003.     IF ¬ GENERATINGCFM THEN
  2004.         Macro
  2005.         _SetTrackDimensions
  2006.             moveq               #94,d0
  2007.             dc.w                $AAAA
  2008.         EndM
  2009.     ELSE
  2010.         IMPORT_CFM_FUNCTION SetTrackDimensions
  2011.     ENDIF
  2012.  
  2013. ;
  2014. ; pascal UserData GetTrackUserData(Track theTrack)
  2015. ;
  2016.     IF ¬ GENERATINGCFM THEN
  2017.         Macro
  2018.         _GetTrackUserData
  2019.             moveq               #95,d0
  2020.             dc.w                $AAAA
  2021.         EndM
  2022.     ELSE
  2023.         IMPORT_CFM_FUNCTION GetTrackUserData
  2024.     ENDIF
  2025.  
  2026. ;
  2027. ; pascal OSErr GetTrackDisplayMatrix(Track theTrack, MatrixRecord *matrix)
  2028. ;
  2029.     IF ¬ GENERATINGCFM THEN
  2030.         Macro
  2031.         _GetTrackDisplayMatrix
  2032.             move.w              #$0263,d0
  2033.             dc.w                $AAAA
  2034.         EndM
  2035.     ELSE
  2036.         IMPORT_CFM_FUNCTION GetTrackDisplayMatrix
  2037.     ENDIF
  2038.  
  2039. ;
  2040. ; pascal OSErr GetTrackSoundLocalizationSettings(Track theTrack, Handle *settings)
  2041. ;
  2042.     IF ¬ GENERATINGCFM THEN
  2043.         Macro
  2044.         _GetTrackSoundLocalizationSettings
  2045.             move.w              #$0282,d0
  2046.             dc.w                $AAAA
  2047.         EndM
  2048.     ELSE
  2049.         IMPORT_CFM_FUNCTION GetTrackSoundLocalizationSettings
  2050.     ENDIF
  2051.  
  2052. ;
  2053. ; pascal OSErr SetTrackSoundLocalizationSettings(Track theTrack, Handle settings)
  2054. ;
  2055.     IF ¬ GENERATINGCFM THEN
  2056.         Macro
  2057.         _SetTrackSoundLocalizationSettings
  2058.             move.w              #$0283,d0
  2059.             dc.w                $AAAA
  2060.         EndM
  2061.     ELSE
  2062.         IMPORT_CFM_FUNCTION SetTrackSoundLocalizationSettings
  2063.     ENDIF
  2064.  
  2065. ;
  2066. ;************************
  2067. ;* get Media routines
  2068. ;*************************
  2069. ;
  2070. ;
  2071. ; pascal Media NewTrackMedia(Track theTrack, OSType mediaType, TimeScale timeScale, Handle dataRef, OSType dataRefType)
  2072. ;
  2073.     IF ¬ GENERATINGCFM THEN
  2074.         Macro
  2075.         _NewTrackMedia
  2076.             move.w              #$018E,d0
  2077.             dc.w                $AAAA
  2078.         EndM
  2079.     ELSE
  2080.         IMPORT_CFM_FUNCTION NewTrackMedia
  2081.     ENDIF
  2082.  
  2083. ;
  2084. ; pascal void DisposeTrackMedia(Media theMedia)
  2085. ;
  2086.     IF ¬ GENERATINGCFM THEN
  2087.         Macro
  2088.         _DisposeTrackMedia
  2089.             moveq               #97,d0
  2090.             dc.w                $AAAA
  2091.         EndM
  2092.     ELSE
  2093.         IMPORT_CFM_FUNCTION DisposeTrackMedia
  2094.     ENDIF
  2095.  
  2096. ;
  2097. ; pascal Media GetTrackMedia(Track theTrack)
  2098. ;
  2099.     IF ¬ GENERATINGCFM THEN
  2100.         Macro
  2101.         _GetTrackMedia
  2102.             moveq               #98,d0
  2103.             dc.w                $AAAA
  2104.         EndM
  2105.     ELSE
  2106.         IMPORT_CFM_FUNCTION GetTrackMedia
  2107.     ENDIF
  2108.  
  2109. ;
  2110. ; pascal Track GetMediaTrack(Media theMedia)
  2111. ;
  2112.     IF ¬ GENERATINGCFM THEN
  2113.         Macro
  2114.         _GetMediaTrack
  2115.             move.w              #$00C5,d0
  2116.             dc.w                $AAAA
  2117.         EndM
  2118.     ELSE
  2119.         IMPORT_CFM_FUNCTION GetMediaTrack
  2120.     ENDIF
  2121.  
  2122. ;
  2123. ;************************
  2124. ;* Media State routines
  2125. ;*************************
  2126. ;
  2127. ;
  2128. ; pascal unsigned long GetMediaCreationTime(Media theMedia)
  2129. ;
  2130.     IF ¬ GENERATINGCFM THEN
  2131.         Macro
  2132.         _GetMediaCreationTime
  2133.             moveq               #102,d0
  2134.             dc.w                $AAAA
  2135.         EndM
  2136.     ELSE
  2137.         IMPORT_CFM_FUNCTION GetMediaCreationTime
  2138.     ENDIF
  2139.  
  2140. ;
  2141. ; pascal unsigned long GetMediaModificationTime(Media theMedia)
  2142. ;
  2143.     IF ¬ GENERATINGCFM THEN
  2144.         Macro
  2145.         _GetMediaModificationTime
  2146.             moveq               #103,d0
  2147.             dc.w                $AAAA
  2148.         EndM
  2149.     ELSE
  2150.         IMPORT_CFM_FUNCTION GetMediaModificationTime
  2151.     ENDIF
  2152.  
  2153. ;
  2154. ; pascal TimeScale GetMediaTimeScale(Media theMedia)
  2155. ;
  2156.     IF ¬ GENERATINGCFM THEN
  2157.         Macro
  2158.         _GetMediaTimeScale
  2159.             moveq               #104,d0
  2160.             dc.w                $AAAA
  2161.         EndM
  2162.     ELSE
  2163.         IMPORT_CFM_FUNCTION GetMediaTimeScale
  2164.     ENDIF
  2165.  
  2166. ;
  2167. ; pascal void SetMediaTimeScale(Media theMedia, TimeScale timeScale)
  2168. ;
  2169.     IF ¬ GENERATINGCFM THEN
  2170.         Macro
  2171.         _SetMediaTimeScale
  2172.             moveq               #105,d0
  2173.             dc.w                $AAAA
  2174.         EndM
  2175.     ELSE
  2176.         IMPORT_CFM_FUNCTION SetMediaTimeScale
  2177.     ENDIF
  2178.  
  2179. ;
  2180. ; pascal TimeValue GetMediaDuration(Media theMedia)
  2181. ;
  2182.     IF ¬ GENERATINGCFM THEN
  2183.         Macro
  2184.         _GetMediaDuration
  2185.             moveq               #106,d0
  2186.             dc.w                $AAAA
  2187.         EndM
  2188.     ELSE
  2189.         IMPORT_CFM_FUNCTION GetMediaDuration
  2190.     ENDIF
  2191.  
  2192. ;
  2193. ; pascal short GetMediaLanguage(Media theMedia)
  2194. ;
  2195.     IF ¬ GENERATINGCFM THEN
  2196.         Macro
  2197.         _GetMediaLanguage
  2198.             moveq               #107,d0
  2199.             dc.w                $AAAA
  2200.         EndM
  2201.     ELSE
  2202.         IMPORT_CFM_FUNCTION GetMediaLanguage
  2203.     ENDIF
  2204.  
  2205. ;
  2206. ; pascal void SetMediaLanguage(Media theMedia, short language)
  2207. ;
  2208.     IF ¬ GENERATINGCFM THEN
  2209.         Macro
  2210.         _SetMediaLanguage
  2211.             moveq               #108,d0
  2212.             dc.w                $AAAA
  2213.         EndM
  2214.     ELSE
  2215.         IMPORT_CFM_FUNCTION SetMediaLanguage
  2216.     ENDIF
  2217.  
  2218. ;
  2219. ; pascal short GetMediaQuality(Media theMedia)
  2220. ;
  2221.     IF ¬ GENERATINGCFM THEN
  2222.         Macro
  2223.         _GetMediaQuality
  2224.             moveq               #109,d0
  2225.             dc.w                $AAAA
  2226.         EndM
  2227.     ELSE
  2228.         IMPORT_CFM_FUNCTION GetMediaQuality
  2229.     ENDIF
  2230.  
  2231. ;
  2232. ; pascal void SetMediaQuality(Media theMedia, short quality)
  2233. ;
  2234.     IF ¬ GENERATINGCFM THEN
  2235.         Macro
  2236.         _SetMediaQuality
  2237.             moveq               #110,d0
  2238.             dc.w                $AAAA
  2239.         EndM
  2240.     ELSE
  2241.         IMPORT_CFM_FUNCTION SetMediaQuality
  2242.     ENDIF
  2243.  
  2244. ;
  2245. ; pascal void GetMediaHandlerDescription(Media theMedia, OSType *mediaType, Str255 creatorName, OSType *creatorManufacturer)
  2246. ;
  2247.     IF ¬ GENERATINGCFM THEN
  2248.         Macro
  2249.         _GetMediaHandlerDescription
  2250.             moveq               #111,d0
  2251.             dc.w                $AAAA
  2252.         EndM
  2253.     ELSE
  2254.         IMPORT_CFM_FUNCTION GetMediaHandlerDescription
  2255.     ENDIF
  2256.  
  2257. ;
  2258. ; pascal UserData GetMediaUserData(Media theMedia)
  2259. ;
  2260.     IF ¬ GENERATINGCFM THEN
  2261.         Macro
  2262.         _GetMediaUserData
  2263.             moveq               #112,d0
  2264.             dc.w                $AAAA
  2265.         EndM
  2266.     ELSE
  2267.         IMPORT_CFM_FUNCTION GetMediaUserData
  2268.     ENDIF
  2269.  
  2270. ;
  2271. ; pascal OSErr GetMediaInputMap(Media theMedia, QTAtomContainer *inputMap)
  2272. ;
  2273.     IF ¬ GENERATINGCFM THEN
  2274.         Macro
  2275.         _GetMediaInputMap
  2276.             move.w              #$0249,d0
  2277.             dc.w                $AAAA
  2278.         EndM
  2279.     ELSE
  2280.         IMPORT_CFM_FUNCTION GetMediaInputMap
  2281.     ENDIF
  2282.  
  2283. ;
  2284. ; pascal OSErr SetMediaInputMap(Media theMedia, QTAtomContainer inputMap)
  2285. ;
  2286.     IF ¬ GENERATINGCFM THEN
  2287.         Macro
  2288.         _SetMediaInputMap
  2289.             move.w              #$024A,d0
  2290.             dc.w                $AAAA
  2291.         EndM
  2292.     ELSE
  2293.         IMPORT_CFM_FUNCTION SetMediaInputMap
  2294.     ENDIF
  2295.  
  2296. ;
  2297. ;************************
  2298. ;* Media Handler routines
  2299. ;*************************
  2300. ;
  2301. ;
  2302. ; pascal MediaHandler GetMediaHandler(Media theMedia)
  2303. ;
  2304.     IF ¬ GENERATINGCFM THEN
  2305.         Macro
  2306.         _GetMediaHandler
  2307.             moveq               #113,d0
  2308.             dc.w                $AAAA
  2309.         EndM
  2310.     ELSE
  2311.         IMPORT_CFM_FUNCTION GetMediaHandler
  2312.     ENDIF
  2313.  
  2314. ;
  2315. ; pascal OSErr SetMediaHandler(Media theMedia, MediaHandlerComponent mH)
  2316. ;
  2317.     IF ¬ GENERATINGCFM THEN
  2318.         Macro
  2319.         _SetMediaHandler
  2320.             move.w              #$0190,d0
  2321.             dc.w                $AAAA
  2322.         EndM
  2323.     ELSE
  2324.         IMPORT_CFM_FUNCTION SetMediaHandler
  2325.     ENDIF
  2326.  
  2327. ;
  2328. ;************************
  2329. ;* Media's Data routines
  2330. ;*************************
  2331. ;
  2332. ;
  2333. ; pascal OSErr BeginMediaEdits(Media theMedia)
  2334. ;
  2335.     IF ¬ GENERATINGCFM THEN
  2336.         Macro
  2337.         _BeginMediaEdits
  2338.             moveq               #114,d0
  2339.             dc.w                $AAAA
  2340.         EndM
  2341.     ELSE
  2342.         IMPORT_CFM_FUNCTION BeginMediaEdits
  2343.     ENDIF
  2344.  
  2345. ;
  2346. ; pascal OSErr EndMediaEdits(Media theMedia)
  2347. ;
  2348.     IF ¬ GENERATINGCFM THEN
  2349.         Macro
  2350.         _EndMediaEdits
  2351.             moveq               #115,d0
  2352.             dc.w                $AAAA
  2353.         EndM
  2354.     ELSE
  2355.         IMPORT_CFM_FUNCTION EndMediaEdits
  2356.     ENDIF
  2357.  
  2358. ;
  2359. ; pascal OSErr SetMediaDefaultDataRefIndex(Media theMedia, short index)
  2360. ;
  2361.     IF ¬ GENERATINGCFM THEN
  2362.         Macro
  2363.         _SetMediaDefaultDataRefIndex
  2364.             move.w              #$01E0,d0
  2365.             dc.w                $AAAA
  2366.         EndM
  2367.     ELSE
  2368.         IMPORT_CFM_FUNCTION SetMediaDefaultDataRefIndex
  2369.     ENDIF
  2370.  
  2371. ;
  2372. ; pascal void GetMediaDataHandlerDescription(Media theMedia, short index, OSType *dhType, Str255 creatorName, OSType *creatorManufacturer)
  2373. ;
  2374.     IF ¬ GENERATINGCFM THEN
  2375.         Macro
  2376.         _GetMediaDataHandlerDescription
  2377.             move.w              #$019E,d0
  2378.             dc.w                $AAAA
  2379.         EndM
  2380.     ELSE
  2381.         IMPORT_CFM_FUNCTION GetMediaDataHandlerDescription
  2382.     ENDIF
  2383.  
  2384. ;
  2385. ; pascal DataHandler GetMediaDataHandler(Media theMedia, short index)
  2386. ;
  2387.     IF ¬ GENERATINGCFM THEN
  2388.         Macro
  2389.         _GetMediaDataHandler
  2390.             move.w              #$019F,d0
  2391.             dc.w                $AAAA
  2392.         EndM
  2393.     ELSE
  2394.         IMPORT_CFM_FUNCTION GetMediaDataHandler
  2395.     ENDIF
  2396.  
  2397. ;
  2398. ; pascal OSErr SetMediaDataHandler(Media theMedia, short index, DataHandlerComponent dataHandler)
  2399. ;
  2400.     IF ¬ GENERATINGCFM THEN
  2401.         Macro
  2402.         _SetMediaDataHandler
  2403.             move.w              #$01A0,d0
  2404.             dc.w                $AAAA
  2405.         EndM
  2406.     ELSE
  2407.         IMPORT_CFM_FUNCTION SetMediaDataHandler
  2408.     ENDIF
  2409.  
  2410. ;
  2411. ; pascal Component GetDataHandler(Handle dataRef, OSType dataHandlerSubType, long flags)
  2412. ;
  2413.     IF ¬ GENERATINGCFM THEN
  2414.         Macro
  2415.         _GetDataHandler
  2416.             move.w              #$01ED,d0
  2417.             dc.w                $AAAA
  2418.         EndM
  2419.     ELSE
  2420.         IMPORT_CFM_FUNCTION GetDataHandler
  2421.     ENDIF
  2422.  
  2423. ;
  2424. ;************************
  2425. ;* Media Sample Table Routines
  2426. ;*************************
  2427. ;
  2428. ;
  2429. ; pascal long GetMediaSampleDescriptionCount(Media theMedia)
  2430. ;
  2431.     IF ¬ GENERATINGCFM THEN
  2432.         Macro
  2433.         _GetMediaSampleDescriptionCount
  2434.             moveq               #119,d0
  2435.             dc.w                $AAAA
  2436.         EndM
  2437.     ELSE
  2438.         IMPORT_CFM_FUNCTION GetMediaSampleDescriptionCount
  2439.     ENDIF
  2440.  
  2441. ;
  2442. ; pascal void GetMediaSampleDescription(Media theMedia, long index, SampleDescriptionHandle descH)
  2443. ;
  2444.     IF ¬ GENERATINGCFM THEN
  2445.         Macro
  2446.         _GetMediaSampleDescription
  2447.             moveq               #120,d0
  2448.             dc.w                $AAAA
  2449.         EndM
  2450.     ELSE
  2451.         IMPORT_CFM_FUNCTION GetMediaSampleDescription
  2452.     ENDIF
  2453.  
  2454. ;
  2455. ; pascal OSErr SetMediaSampleDescription(Media theMedia, long index, SampleDescriptionHandle descH)
  2456. ;
  2457.     IF ¬ GENERATINGCFM THEN
  2458.         Macro
  2459.         _SetMediaSampleDescription
  2460.             move.w              #$01D0,d0
  2461.             dc.w                $AAAA
  2462.         EndM
  2463.     ELSE
  2464.         IMPORT_CFM_FUNCTION SetMediaSampleDescription
  2465.     ENDIF
  2466.  
  2467. ;
  2468. ; pascal long GetMediaSampleCount(Media theMedia)
  2469. ;
  2470.     IF ¬ GENERATINGCFM THEN
  2471.         Macro
  2472.         _GetMediaSampleCount
  2473.             moveq               #121,d0
  2474.             dc.w                $AAAA
  2475.         EndM
  2476.     ELSE
  2477.         IMPORT_CFM_FUNCTION GetMediaSampleCount
  2478.     ENDIF
  2479.  
  2480. ;
  2481. ; pascal void SampleNumToMediaTime(Media theMedia, long logicalSampleNum, TimeValue *sampleTime, TimeValue *sampleDuration)
  2482. ;
  2483.     IF ¬ GENERATINGCFM THEN
  2484.         Macro
  2485.         _SampleNumToMediaTime
  2486.             moveq               #122,d0
  2487.             dc.w                $AAAA
  2488.         EndM
  2489.     ELSE
  2490.         IMPORT_CFM_FUNCTION SampleNumToMediaTime
  2491.     ENDIF
  2492.  
  2493. ;
  2494. ; pascal void MediaTimeToSampleNum(Media theMedia, TimeValue time, long *sampleNum, TimeValue *sampleTime, TimeValue *sampleDuration)
  2495. ;
  2496.     IF ¬ GENERATINGCFM THEN
  2497.         Macro
  2498.         _MediaTimeToSampleNum
  2499.             moveq               #123,d0
  2500.             dc.w                $AAAA
  2501.         EndM
  2502.     ELSE
  2503.         IMPORT_CFM_FUNCTION MediaTimeToSampleNum
  2504.     ENDIF
  2505.  
  2506. ;
  2507. ; pascal OSErr AddMediaSample(Media theMedia, Handle dataIn, long inOffset, unsigned long size, TimeValue durationPerSample, SampleDescriptionHandle sampleDescriptionH, long numberOfSamples, short sampleFlags, TimeValue *sampleTime)
  2508. ;
  2509.     IF ¬ GENERATINGCFM THEN
  2510.         Macro
  2511.         _AddMediaSample
  2512.             moveq               #124,d0
  2513.             dc.w                $AAAA
  2514.         EndM
  2515.     ELSE
  2516.         IMPORT_CFM_FUNCTION AddMediaSample
  2517.     ENDIF
  2518.  
  2519. ;
  2520. ; pascal OSErr AddMediaSampleReference(Media theMedia, long dataOffset, unsigned long size, TimeValue durationPerSample, SampleDescriptionHandle sampleDescriptionH, long numberOfSamples, short sampleFlags, TimeValue *sampleTime)
  2521. ;
  2522.     IF ¬ GENERATINGCFM THEN
  2523.         Macro
  2524.         _AddMediaSampleReference
  2525.             moveq               #125,d0
  2526.             dc.w                $AAAA
  2527.         EndM
  2528.     ELSE
  2529.         IMPORT_CFM_FUNCTION AddMediaSampleReference
  2530.     ENDIF
  2531.  
  2532. ;
  2533. ; pascal OSErr AddMediaSampleReferences(Media theMedia, SampleDescriptionHandle sampleDescriptionH, long numberOfSamples, SampleReferencePtr sampleRefs, TimeValue *sampleTime)
  2534. ;
  2535.     IF ¬ GENERATINGCFM THEN
  2536.         Macro
  2537.         _AddMediaSampleReferences
  2538.             move.w              #$01F7,d0
  2539.             dc.w                $AAAA
  2540.         EndM
  2541.     ELSE
  2542.         IMPORT_CFM_FUNCTION AddMediaSampleReferences
  2543.     ENDIF
  2544.  
  2545. ;
  2546. ; pascal OSErr GetMediaSample(Media theMedia, Handle dataOut, long maxSizeToGrow, long *size, TimeValue time, TimeValue *sampleTime, TimeValue *durationPerSample, SampleDescriptionHandle sampleDescriptionH, long *sampleDescriptionIndex, long maxNumberOfSamples, long *numberOfSamples, short *sampleFlags)
  2547. ;
  2548.     IF ¬ GENERATINGCFM THEN
  2549.         Macro
  2550.         _GetMediaSample
  2551.             moveq               #126,d0
  2552.             dc.w                $AAAA
  2553.         EndM
  2554.     ELSE
  2555.         IMPORT_CFM_FUNCTION GetMediaSample
  2556.     ENDIF
  2557.  
  2558. ;
  2559. ; pascal OSErr GetMediaSampleReference(Media theMedia, long *dataOffset, long *size, TimeValue time, TimeValue *sampleTime, TimeValue *durationPerSample, SampleDescriptionHandle sampleDescriptionH, long *sampleDescriptionIndex, long maxNumberOfSamples, long *numberOfSamples, short *sampleFlags)
  2560. ;
  2561.     IF ¬ GENERATINGCFM THEN
  2562.         Macro
  2563.         _GetMediaSampleReference
  2564.             moveq               #127,d0
  2565.             dc.w                $AAAA
  2566.         EndM
  2567.     ELSE
  2568.         IMPORT_CFM_FUNCTION GetMediaSampleReference
  2569.     ENDIF
  2570.  
  2571. ;
  2572. ; pascal OSErr GetMediaSampleReferences(Media theMedia, TimeValue time, TimeValue *sampleTime, SampleDescriptionHandle sampleDescriptionH, long *sampleDescriptionIndex, long maxNumberOfEntries, long *actualNumberofEntries, SampleReferencePtr sampleRefs)
  2573. ;
  2574.     IF ¬ GENERATINGCFM THEN
  2575.         Macro
  2576.         _GetMediaSampleReferences
  2577.             move.w              #$0235,d0
  2578.             dc.w                $AAAA
  2579.         EndM
  2580.     ELSE
  2581.         IMPORT_CFM_FUNCTION GetMediaSampleReferences
  2582.     ENDIF
  2583.  
  2584. ;
  2585. ; pascal OSErr SetMediaPreferredChunkSize(Media theMedia, long maxChunkSize)
  2586. ;
  2587.     IF ¬ GENERATINGCFM THEN
  2588.         Macro
  2589.         _SetMediaPreferredChunkSize
  2590.             move.w              #$01F8,d0
  2591.             dc.w                $AAAA
  2592.         EndM
  2593.     ELSE
  2594.         IMPORT_CFM_FUNCTION SetMediaPreferredChunkSize
  2595.     ENDIF
  2596.  
  2597. ;
  2598. ; pascal OSErr GetMediaPreferredChunkSize(Media theMedia, long *maxChunkSize)
  2599. ;
  2600.     IF ¬ GENERATINGCFM THEN
  2601.         Macro
  2602.         _GetMediaPreferredChunkSize
  2603.             move.w              #$01F9,d0
  2604.             dc.w                $AAAA
  2605.         EndM
  2606.     ELSE
  2607.         IMPORT_CFM_FUNCTION GetMediaPreferredChunkSize
  2608.     ENDIF
  2609.  
  2610. ;
  2611. ; pascal OSErr SetMediaShadowSync(Media theMedia, long frameDiffSampleNum, long syncSampleNum)
  2612. ;
  2613.     IF ¬ GENERATINGCFM THEN
  2614.         Macro
  2615.         _SetMediaShadowSync
  2616.             move.w              #$0121,d0
  2617.             dc.w                $AAAA
  2618.         EndM
  2619.     ELSE
  2620.         IMPORT_CFM_FUNCTION SetMediaShadowSync
  2621.     ENDIF
  2622.  
  2623. ;
  2624. ; pascal OSErr GetMediaShadowSync(Media theMedia, long frameDiffSampleNum, long *syncSampleNum)
  2625. ;
  2626.     IF ¬ GENERATINGCFM THEN
  2627.         Macro
  2628.         _GetMediaShadowSync
  2629.             move.w              #$0122,d0
  2630.             dc.w                $AAAA
  2631.         EndM
  2632.     ELSE
  2633.         IMPORT_CFM_FUNCTION GetMediaShadowSync
  2634.     ENDIF
  2635.  
  2636. ;
  2637. ;************************
  2638. ;* Editing Routines
  2639. ;*************************
  2640. ;
  2641. ;
  2642. ; pascal OSErr InsertMediaIntoTrack(Track theTrack, TimeValue trackStart, TimeValue mediaTime, TimeValue mediaDuration, Fixed mediaRate)
  2643. ;
  2644.     IF ¬ GENERATINGCFM THEN
  2645.         Macro
  2646.         _InsertMediaIntoTrack
  2647.             move.w              #$0183,d0
  2648.             dc.w                $AAAA
  2649.         EndM
  2650.     ELSE
  2651.         IMPORT_CFM_FUNCTION InsertMediaIntoTrack
  2652.     ENDIF
  2653.  
  2654. ;
  2655. ; pascal OSErr InsertTrackSegment(Track srcTrack, Track dstTrack, TimeValue srcIn, TimeValue srcDuration, TimeValue dstIn)
  2656. ;
  2657.     IF ¬ GENERATINGCFM THEN
  2658.         Macro
  2659.         _InsertTrackSegment
  2660.             move.w              #$0085,d0
  2661.             dc.w                $AAAA
  2662.         EndM
  2663.     ELSE
  2664.         IMPORT_CFM_FUNCTION InsertTrackSegment
  2665.     ENDIF
  2666.  
  2667. ;
  2668. ; pascal OSErr InsertMovieSegment(Movie srcMovie, Movie dstMovie, TimeValue srcIn, TimeValue srcDuration, TimeValue dstIn)
  2669. ;
  2670.     IF ¬ GENERATINGCFM THEN
  2671.         Macro
  2672.         _InsertMovieSegment
  2673.             move.w              #$0086,d0
  2674.             dc.w                $AAAA
  2675.         EndM
  2676.     ELSE
  2677.         IMPORT_CFM_FUNCTION InsertMovieSegment
  2678.     ENDIF
  2679.  
  2680. ;
  2681. ; pascal OSErr InsertEmptyTrackSegment(Track dstTrack, TimeValue dstIn, TimeValue dstDuration)
  2682. ;
  2683.     IF ¬ GENERATINGCFM THEN
  2684.         Macro
  2685.         _InsertEmptyTrackSegment
  2686.             move.w              #$0087,d0
  2687.             dc.w                $AAAA
  2688.         EndM
  2689.     ELSE
  2690.         IMPORT_CFM_FUNCTION InsertEmptyTrackSegment
  2691.     ENDIF
  2692.  
  2693. ;
  2694. ; pascal OSErr InsertEmptyMovieSegment(Movie dstMovie, TimeValue dstIn, TimeValue dstDuration)
  2695. ;
  2696.     IF ¬ GENERATINGCFM THEN
  2697.         Macro
  2698.         _InsertEmptyMovieSegment
  2699.             move.w              #$0088,d0
  2700.             dc.w                $AAAA
  2701.         EndM
  2702.     ELSE
  2703.         IMPORT_CFM_FUNCTION InsertEmptyMovieSegment
  2704.     ENDIF
  2705.  
  2706. ;
  2707. ; pascal OSErr DeleteTrackSegment(Track theTrack, TimeValue startTime, TimeValue duration)
  2708. ;
  2709.     IF ¬ GENERATINGCFM THEN
  2710.         Macro
  2711.         _DeleteTrackSegment
  2712.             move.w              #$0089,d0
  2713.             dc.w                $AAAA
  2714.         EndM
  2715.     ELSE
  2716.         IMPORT_CFM_FUNCTION DeleteTrackSegment
  2717.     ENDIF
  2718.  
  2719. ;
  2720. ; pascal OSErr DeleteMovieSegment(Movie theMovie, TimeValue startTime, TimeValue duration)
  2721. ;
  2722.     IF ¬ GENERATINGCFM THEN
  2723.         Macro
  2724.         _DeleteMovieSegment
  2725.             move.w              #$008A,d0
  2726.             dc.w                $AAAA
  2727.         EndM
  2728.     ELSE
  2729.         IMPORT_CFM_FUNCTION DeleteMovieSegment
  2730.     ENDIF
  2731.  
  2732. ;
  2733. ; pascal OSErr ScaleTrackSegment(Track theTrack, TimeValue startTime, TimeValue oldDuration, TimeValue newDuration)
  2734. ;
  2735.     IF ¬ GENERATINGCFM THEN
  2736.         Macro
  2737.         _ScaleTrackSegment
  2738.             move.w              #$008B,d0
  2739.             dc.w                $AAAA
  2740.         EndM
  2741.     ELSE
  2742.         IMPORT_CFM_FUNCTION ScaleTrackSegment
  2743.     ENDIF
  2744.  
  2745. ;
  2746. ; pascal OSErr ScaleMovieSegment(Movie theMovie, TimeValue startTime, TimeValue oldDuration, TimeValue newDuration)
  2747. ;
  2748.     IF ¬ GENERATINGCFM THEN
  2749.         Macro
  2750.         _ScaleMovieSegment
  2751.             move.w              #$008C,d0
  2752.             dc.w                $AAAA
  2753.         EndM
  2754.     ELSE
  2755.         IMPORT_CFM_FUNCTION ScaleMovieSegment
  2756.     ENDIF
  2757.  
  2758. ;
  2759. ;************************
  2760. ;* Hi-level Editing Routines
  2761. ;*************************
  2762. ;
  2763. ;
  2764. ; pascal Movie CutMovieSelection(Movie theMovie)
  2765. ;
  2766.     IF ¬ GENERATINGCFM THEN
  2767.         Macro
  2768.         _CutMovieSelection
  2769.             move.w              #$008D,d0
  2770.             dc.w                $AAAA
  2771.         EndM
  2772.     ELSE
  2773.         IMPORT_CFM_FUNCTION CutMovieSelection
  2774.     ENDIF
  2775.  
  2776. ;
  2777. ; pascal Movie CopyMovieSelection(Movie theMovie)
  2778. ;
  2779.     IF ¬ GENERATINGCFM THEN
  2780.         Macro
  2781.         _CopyMovieSelection
  2782.             move.w              #$008E,d0
  2783.             dc.w                $AAAA
  2784.         EndM
  2785.     ELSE
  2786.         IMPORT_CFM_FUNCTION CopyMovieSelection
  2787.     ENDIF
  2788.  
  2789. ;
  2790. ; pascal void PasteMovieSelection(Movie theMovie, Movie src)
  2791. ;
  2792.     IF ¬ GENERATINGCFM THEN
  2793.         Macro
  2794.         _PasteMovieSelection
  2795.             move.w              #$008F,d0
  2796.             dc.w                $AAAA
  2797.         EndM
  2798.     ELSE
  2799.         IMPORT_CFM_FUNCTION PasteMovieSelection
  2800.     ENDIF
  2801.  
  2802. ;
  2803. ; pascal void AddMovieSelection(Movie theMovie, Movie src)
  2804. ;
  2805.     IF ¬ GENERATINGCFM THEN
  2806.         Macro
  2807.         _AddMovieSelection
  2808.             move.w              #$0152,d0
  2809.             dc.w                $AAAA
  2810.         EndM
  2811.     ELSE
  2812.         IMPORT_CFM_FUNCTION AddMovieSelection
  2813.     ENDIF
  2814.  
  2815. ;
  2816. ; pascal void ClearMovieSelection(Movie theMovie)
  2817. ;
  2818.     IF ¬ GENERATINGCFM THEN
  2819.         Macro
  2820.         _ClearMovieSelection
  2821.             move.w              #$00E1,d0
  2822.             dc.w                $AAAA
  2823.         EndM
  2824.     ELSE
  2825.         IMPORT_CFM_FUNCTION ClearMovieSelection
  2826.     ENDIF
  2827.  
  2828. ;
  2829. ; pascal OSErr PasteHandleIntoMovie(Handle h, OSType handleType, Movie theMovie, long flags, ComponentInstance userComp)
  2830. ;
  2831.     IF ¬ GENERATINGCFM THEN
  2832.         Macro
  2833.         _PasteHandleIntoMovie
  2834.             move.w              #$00CB,d0
  2835.             dc.w                $AAAA
  2836.         EndM
  2837.     ELSE
  2838.         IMPORT_CFM_FUNCTION PasteHandleIntoMovie
  2839.     ENDIF
  2840.  
  2841. ;
  2842. ; pascal OSErr PutMovieIntoTypedHandle(Movie theMovie, Track targetTrack, OSType handleType, Handle publicMovie, TimeValue start, TimeValue dur, long flags, ComponentInstance userComp)
  2843. ;
  2844.     IF ¬ GENERATINGCFM THEN
  2845.         Macro
  2846.         _PutMovieIntoTypedHandle
  2847.             move.w              #$01CD,d0
  2848.             dc.w                $AAAA
  2849.         EndM
  2850.     ELSE
  2851.         IMPORT_CFM_FUNCTION PutMovieIntoTypedHandle
  2852.     ENDIF
  2853.  
  2854. ;
  2855. ; pascal Component IsScrapMovie(Track targetTrack)
  2856. ;
  2857.     IF ¬ GENERATINGCFM THEN
  2858.         Macro
  2859.         _IsScrapMovie
  2860.             move.w              #$00CC,d0
  2861.             dc.w                $AAAA
  2862.         EndM
  2863.     ELSE
  2864.         IMPORT_CFM_FUNCTION IsScrapMovie
  2865.     ENDIF
  2866.  
  2867. ;
  2868. ;************************
  2869. ;* Middle-level Editing Routines
  2870. ;*************************
  2871. ;
  2872. ;
  2873. ; pascal OSErr CopyTrackSettings(Track srcTrack, Track dstTrack)
  2874. ;
  2875.     IF ¬ GENERATINGCFM THEN
  2876.         Macro
  2877.         _CopyTrackSettings
  2878.             move.w              #$0153,d0
  2879.             dc.w                $AAAA
  2880.         EndM
  2881.     ELSE
  2882.         IMPORT_CFM_FUNCTION CopyTrackSettings
  2883.     ENDIF
  2884.  
  2885. ;
  2886. ; pascal OSErr CopyMovieSettings(Movie srcMovie, Movie dstMovie)
  2887. ;
  2888.     IF ¬ GENERATINGCFM THEN
  2889.         Macro
  2890.         _CopyMovieSettings
  2891.             move.w              #$0154,d0
  2892.             dc.w                $AAAA
  2893.         EndM
  2894.     ELSE
  2895.         IMPORT_CFM_FUNCTION CopyMovieSettings
  2896.     ENDIF
  2897.  
  2898. ;
  2899. ; pascal OSErr AddEmptyTrackToMovie(Track srcTrack, Movie dstMovie, Handle dataRef, OSType dataRefType, Track *dstTrack)
  2900. ;
  2901.     IF ¬ GENERATINGCFM THEN
  2902.         Macro
  2903.         _AddEmptyTrackToMovie
  2904.             moveq               #116,d0
  2905.             dc.w                $AAAA
  2906.         EndM
  2907.     ELSE
  2908.         IMPORT_CFM_FUNCTION AddEmptyTrackToMovie
  2909.     ENDIF
  2910.  
  2911. ;
  2912. ;************************
  2913. ;* movie & track edit state routines
  2914. ;*************************
  2915. ;
  2916. ;
  2917. ; pascal MovieEditState NewMovieEditState(Movie theMovie)
  2918. ;
  2919.     IF ¬ GENERATINGCFM THEN
  2920.         Macro
  2921.         _NewMovieEditState
  2922.             move.w              #$0104,d0
  2923.             dc.w                $AAAA
  2924.         EndM
  2925.     ELSE
  2926.         IMPORT_CFM_FUNCTION NewMovieEditState
  2927.     ENDIF
  2928.  
  2929. ;
  2930. ; pascal OSErr UseMovieEditState(Movie theMovie, MovieEditState toState)
  2931. ;
  2932.     IF ¬ GENERATINGCFM THEN
  2933.         Macro
  2934.         _UseMovieEditState
  2935.             move.w              #$0105,d0
  2936.             dc.w                $AAAA
  2937.         EndM
  2938.     ELSE
  2939.         IMPORT_CFM_FUNCTION UseMovieEditState
  2940.     ENDIF
  2941.  
  2942. ;
  2943. ; pascal OSErr DisposeMovieEditState(MovieEditState state)
  2944. ;
  2945.     IF ¬ GENERATINGCFM THEN
  2946.         Macro
  2947.         _DisposeMovieEditState
  2948.             move.w              #$0106,d0
  2949.             dc.w                $AAAA
  2950.         EndM
  2951.     ELSE
  2952.         IMPORT_CFM_FUNCTION DisposeMovieEditState
  2953.     ENDIF
  2954.  
  2955. ;
  2956. ; pascal TrackEditState NewTrackEditState(Track theTrack)
  2957. ;
  2958.     IF ¬ GENERATINGCFM THEN
  2959.         Macro
  2960.         _NewTrackEditState
  2961.             move.w              #$0107,d0
  2962.             dc.w                $AAAA
  2963.         EndM
  2964.     ELSE
  2965.         IMPORT_CFM_FUNCTION NewTrackEditState
  2966.     ENDIF
  2967.  
  2968. ;
  2969. ; pascal OSErr UseTrackEditState(Track theTrack, TrackEditState state)
  2970. ;
  2971.     IF ¬ GENERATINGCFM THEN
  2972.         Macro
  2973.         _UseTrackEditState
  2974.             move.w              #$0108,d0
  2975.             dc.w                $AAAA
  2976.         EndM
  2977.     ELSE
  2978.         IMPORT_CFM_FUNCTION UseTrackEditState
  2979.     ENDIF
  2980.  
  2981. ;
  2982. ; pascal OSErr DisposeTrackEditState(TrackEditState state)
  2983. ;
  2984.     IF ¬ GENERATINGCFM THEN
  2985.         Macro
  2986.         _DisposeTrackEditState
  2987.             move.w              #$0109,d0
  2988.             dc.w                $AAAA
  2989.         EndM
  2990.     ELSE
  2991.         IMPORT_CFM_FUNCTION DisposeTrackEditState
  2992.     ENDIF
  2993.  
  2994. ;
  2995. ;************************
  2996. ;* track reference routines
  2997. ;*************************
  2998. ;
  2999. ;
  3000. ; pascal OSErr AddTrackReference(Track theTrack, Track refTrack, OSType refType, long *addedIndex)
  3001. ;
  3002.     IF ¬ GENERATINGCFM THEN
  3003.         Macro
  3004.         _AddTrackReference
  3005.             move.w              #$01F0,d0
  3006.             dc.w                $AAAA
  3007.         EndM
  3008.     ELSE
  3009.         IMPORT_CFM_FUNCTION AddTrackReference
  3010.     ENDIF
  3011.  
  3012. ;
  3013. ; pascal OSErr DeleteTrackReference(Track theTrack, OSType refType, long index)
  3014. ;
  3015.     IF ¬ GENERATINGCFM THEN
  3016.         Macro
  3017.         _DeleteTrackReference
  3018.             move.w              #$01F1,d0
  3019.             dc.w                $AAAA
  3020.         EndM
  3021.     ELSE
  3022.         IMPORT_CFM_FUNCTION DeleteTrackReference
  3023.     ENDIF
  3024.  
  3025. ;
  3026. ; pascal OSErr SetTrackReference(Track theTrack, Track refTrack, OSType refType, long index)
  3027. ;
  3028.     IF ¬ GENERATINGCFM THEN
  3029.         Macro
  3030.         _SetTrackReference
  3031.             move.w              #$01F2,d0
  3032.             dc.w                $AAAA
  3033.         EndM
  3034.     ELSE
  3035.         IMPORT_CFM_FUNCTION SetTrackReference
  3036.     ENDIF
  3037.  
  3038. ;
  3039. ; pascal Track GetTrackReference(Track theTrack, OSType refType, long index)
  3040. ;
  3041.     IF ¬ GENERATINGCFM THEN
  3042.         Macro
  3043.         _GetTrackReference
  3044.             move.w              #$01F3,d0
  3045.             dc.w                $AAAA
  3046.         EndM
  3047.     ELSE
  3048.         IMPORT_CFM_FUNCTION GetTrackReference
  3049.     ENDIF
  3050.  
  3051. ;
  3052. ; pascal OSType GetNextTrackReferenceType(Track theTrack, OSType refType)
  3053. ;
  3054.     IF ¬ GENERATINGCFM THEN
  3055.         Macro
  3056.         _GetNextTrackReferenceType
  3057.             move.w              #$01F4,d0
  3058.             dc.w                $AAAA
  3059.         EndM
  3060.     ELSE
  3061.         IMPORT_CFM_FUNCTION GetNextTrackReferenceType
  3062.     ENDIF
  3063.  
  3064. ;
  3065. ; pascal long GetTrackReferenceCount(Track theTrack, OSType refType)
  3066. ;
  3067.     IF ¬ GENERATINGCFM THEN
  3068.         Macro
  3069.         _GetTrackReferenceCount
  3070.             move.w              #$01F5,d0
  3071.             dc.w                $AAAA
  3072.         EndM
  3073.     ELSE
  3074.         IMPORT_CFM_FUNCTION GetTrackReferenceCount
  3075.     ENDIF
  3076.  
  3077. ;
  3078. ;************************
  3079. ;* high level file conversion routines
  3080. ;*************************
  3081. ;
  3082. ;
  3083. ; pascal OSErr ConvertFileToMovieFile(const FSSpec *inputFile, const FSSpec *outputFile, OSType creator, ScriptCode scriptTag, short *resID, long flags, ComponentInstance userComp, MovieProgressUPP proc, long refCon)
  3084. ;
  3085.     IF ¬ GENERATINGCFM THEN
  3086.         Macro
  3087.         _ConvertFileToMovieFile
  3088.             move.w              #$01CB,d0
  3089.             dc.w                $AAAA
  3090.         EndM
  3091.     ELSE
  3092.         IMPORT_CFM_FUNCTION ConvertFileToMovieFile
  3093.     ENDIF
  3094.  
  3095. ;
  3096. ; pascal OSErr ConvertMovieToFile(Movie theMovie, Track onlyTrack, FSSpec *outputFile, OSType fileType, OSType creator, ScriptCode scriptTag, short *resID, long flags, ComponentInstance userComp)
  3097. ;
  3098.     IF ¬ GENERATINGCFM THEN
  3099.         Macro
  3100.         _ConvertMovieToFile
  3101.             move.w              #$01CC,d0
  3102.             dc.w                $AAAA
  3103.         EndM
  3104.     ELSE
  3105.         IMPORT_CFM_FUNCTION ConvertMovieToFile
  3106.     ENDIF
  3107.  
  3108. ;
  3109. ;************************
  3110. ;* Movie Timebase Conversion Routines
  3111. ;*************************
  3112. ;
  3113. ;
  3114. ; pascal TimeValue TrackTimeToMediaTime(TimeValue value, Track theTrack)
  3115. ;
  3116.     IF ¬ GENERATINGCFM THEN
  3117.         Macro
  3118.         _TrackTimeToMediaTime
  3119.             move.w              #$0096,d0
  3120.             dc.w                $AAAA
  3121.         EndM
  3122.     ELSE
  3123.         IMPORT_CFM_FUNCTION TrackTimeToMediaTime
  3124.     ENDIF
  3125.  
  3126. ;
  3127. ; pascal Fixed GetTrackEditRate(Track theTrack, TimeValue atTime)
  3128. ;
  3129.     IF ¬ GENERATINGCFM THEN
  3130.         Macro
  3131.         _GetTrackEditRate
  3132.             move.w              #$0123,d0
  3133.             dc.w                $AAAA
  3134.         EndM
  3135.     ELSE
  3136.         IMPORT_CFM_FUNCTION GetTrackEditRate
  3137.     ENDIF
  3138.  
  3139. ;
  3140. ;************************
  3141. ;* Miscellaneous Routines
  3142. ;*************************
  3143. ;
  3144. ;
  3145. ; pascal long GetMovieDataSize(Movie theMovie, TimeValue startTime, TimeValue duration)
  3146. ;
  3147.     IF ¬ GENERATINGCFM THEN
  3148.         Macro
  3149.         _GetMovieDataSize
  3150.             move.w              #$0098,d0
  3151.             dc.w                $AAAA
  3152.         EndM
  3153.     ELSE
  3154.         IMPORT_CFM_FUNCTION GetMovieDataSize
  3155.     ENDIF
  3156.  
  3157. ;
  3158. ; pascal long GetTrackDataSize(Track theTrack, TimeValue startTime, TimeValue duration)
  3159. ;
  3160.     IF ¬ GENERATINGCFM THEN
  3161.         Macro
  3162.         _GetTrackDataSize
  3163.             move.w              #$0149,d0
  3164.             dc.w                $AAAA
  3165.         EndM
  3166.     ELSE
  3167.         IMPORT_CFM_FUNCTION GetTrackDataSize
  3168.     ENDIF
  3169.  
  3170. ;
  3171. ; pascal long GetMediaDataSize(Media theMedia, TimeValue startTime, TimeValue duration)
  3172. ;
  3173.     IF ¬ GENERATINGCFM THEN
  3174.         Macro
  3175.         _GetMediaDataSize
  3176.             move.w              #$0099,d0
  3177.             dc.w                $AAAA
  3178.         EndM
  3179.     ELSE
  3180.         IMPORT_CFM_FUNCTION GetMediaDataSize
  3181.     ENDIF
  3182.  
  3183. ;
  3184. ; pascal Boolean PtInMovie(Movie theMovie, Point pt)
  3185. ;
  3186.     IF ¬ GENERATINGCFM THEN
  3187.         Macro
  3188.         _PtInMovie
  3189.             move.w              #$009A,d0
  3190.             dc.w                $AAAA
  3191.         EndM
  3192.     ELSE
  3193.         IMPORT_CFM_FUNCTION PtInMovie
  3194.     ENDIF
  3195.  
  3196. ;
  3197. ; pascal Boolean PtInTrack(Track theTrack, Point pt)
  3198. ;
  3199.     IF ¬ GENERATINGCFM THEN
  3200.         Macro
  3201.         _PtInTrack
  3202.             move.w              #$009B,d0
  3203.             dc.w                $AAAA
  3204.         EndM
  3205.     ELSE
  3206.         IMPORT_CFM_FUNCTION PtInTrack
  3207.     ENDIF
  3208.  
  3209. ;
  3210. ;************************
  3211. ;* Group Selection Routines
  3212. ;*************************
  3213. ;
  3214. ;
  3215. ; pascal void SetMovieLanguage(Movie theMovie, long language)
  3216. ;
  3217.     IF ¬ GENERATINGCFM THEN
  3218.         Macro
  3219.         _SetMovieLanguage
  3220.             move.w              #$009C,d0
  3221.             dc.w                $AAAA
  3222.         EndM
  3223.     ELSE
  3224.         IMPORT_CFM_FUNCTION SetMovieLanguage
  3225.     ENDIF
  3226.  
  3227. ;
  3228. ;************************
  3229. ;* User Data
  3230. ;*************************
  3231. ;
  3232. ;
  3233. ; pascal OSErr GetUserData(UserData theUserData, Handle data, OSType udType, long index)
  3234. ;
  3235.     IF ¬ GENERATINGCFM THEN
  3236.         Macro
  3237.         _GetUserData
  3238.             move.w              #$009E,d0
  3239.             dc.w                $AAAA
  3240.         EndM
  3241.     ELSE
  3242.         IMPORT_CFM_FUNCTION GetUserData
  3243.     ENDIF
  3244.  
  3245. ;
  3246. ; pascal OSErr AddUserData(UserData theUserData, Handle data, OSType udType)
  3247. ;
  3248.     IF ¬ GENERATINGCFM THEN
  3249.         Macro
  3250.         _AddUserData
  3251.             move.w              #$009F,d0
  3252.             dc.w                $AAAA
  3253.         EndM
  3254.     ELSE
  3255.         IMPORT_CFM_FUNCTION AddUserData
  3256.     ENDIF
  3257.  
  3258. ;
  3259. ; pascal OSErr RemoveUserData(UserData theUserData, OSType udType, long index)
  3260. ;
  3261.     IF ¬ GENERATINGCFM THEN
  3262.         Macro
  3263.         _RemoveUserData
  3264.             move.w              #$00A0,d0
  3265.             dc.w                $AAAA
  3266.         EndM
  3267.     ELSE
  3268.         IMPORT_CFM_FUNCTION RemoveUserData
  3269.     ENDIF
  3270.  
  3271. ;
  3272. ; pascal short CountUserDataType(UserData theUserData, OSType udType)
  3273. ;
  3274.     IF ¬ GENERATINGCFM THEN
  3275.         Macro
  3276.         _CountUserDataType
  3277.             move.w              #$014B,d0
  3278.             dc.w                $AAAA
  3279.         EndM
  3280.     ELSE
  3281.         IMPORT_CFM_FUNCTION CountUserDataType
  3282.     ENDIF
  3283.  
  3284. ;
  3285. ; pascal long GetNextUserDataType(UserData theUserData, OSType udType)
  3286. ;
  3287.     IF ¬ GENERATINGCFM THEN
  3288.         Macro
  3289.         _GetNextUserDataType
  3290.             move.w              #$01A5,d0
  3291.             dc.w                $AAAA
  3292.         EndM
  3293.     ELSE
  3294.         IMPORT_CFM_FUNCTION GetNextUserDataType
  3295.     ENDIF
  3296.  
  3297. ;
  3298. ; pascal OSErr GetUserDataItem(UserData theUserData, void *data, long size, OSType udType, long index)
  3299. ;
  3300.     IF ¬ GENERATINGCFM THEN
  3301.         Macro
  3302.         _GetUserDataItem
  3303.             move.w              #$0126,d0
  3304.             dc.w                $AAAA
  3305.         EndM
  3306.     ELSE
  3307.         IMPORT_CFM_FUNCTION GetUserDataItem
  3308.     ENDIF
  3309.  
  3310. ;
  3311. ; pascal OSErr SetUserDataItem(UserData theUserData, void *data, long size, OSType udType, long index)
  3312. ;
  3313.     IF ¬ GENERATINGCFM THEN
  3314.         Macro
  3315.         _SetUserDataItem
  3316.             move.w              #$012E,d0
  3317.             dc.w                $AAAA
  3318.         EndM
  3319.     ELSE
  3320.         IMPORT_CFM_FUNCTION SetUserDataItem
  3321.     ENDIF
  3322.  
  3323. ;
  3324. ; pascal OSErr AddUserDataText(UserData theUserData, Handle data, OSType udType, long index, short itlRegionTag)
  3325. ;
  3326.     IF ¬ GENERATINGCFM THEN
  3327.         Macro
  3328.         _AddUserDataText
  3329.             move.w              #$014C,d0
  3330.             dc.w                $AAAA
  3331.         EndM
  3332.     ELSE
  3333.         IMPORT_CFM_FUNCTION AddUserDataText
  3334.     ENDIF
  3335.  
  3336. ;
  3337. ; pascal OSErr GetUserDataText(UserData theUserData, Handle data, OSType udType, long index, short itlRegionTag)
  3338. ;
  3339.     IF ¬ GENERATINGCFM THEN
  3340.         Macro
  3341.         _GetUserDataText
  3342.             move.w              #$014D,d0
  3343.             dc.w                $AAAA
  3344.         EndM
  3345.     ELSE
  3346.         IMPORT_CFM_FUNCTION GetUserDataText
  3347.     ENDIF
  3348.  
  3349. ;
  3350. ; pascal OSErr RemoveUserDataText(UserData theUserData, OSType udType, long index, short itlRegionTag)
  3351. ;
  3352.     IF ¬ GENERATINGCFM THEN
  3353.         Macro
  3354.         _RemoveUserDataText
  3355.             move.w              #$014E,d0
  3356.             dc.w                $AAAA
  3357.         EndM
  3358.     ELSE
  3359.         IMPORT_CFM_FUNCTION RemoveUserDataText
  3360.     ENDIF
  3361.  
  3362. ;
  3363. ; pascal OSErr NewUserData(UserData *theUserData)
  3364. ;
  3365.     IF ¬ GENERATINGCFM THEN
  3366.         Macro
  3367.         _NewUserData
  3368.             move.w              #$012F,d0
  3369.             dc.w                $AAAA
  3370.         EndM
  3371.     ELSE
  3372.         IMPORT_CFM_FUNCTION NewUserData
  3373.     ENDIF
  3374.  
  3375. ;
  3376. ; pascal OSErr DisposeUserData(UserData theUserData)
  3377. ;
  3378.     IF ¬ GENERATINGCFM THEN
  3379.         Macro
  3380.         _DisposeUserData
  3381.             move.w              #$0130,d0
  3382.             dc.w                $AAAA
  3383.         EndM
  3384.     ELSE
  3385.         IMPORT_CFM_FUNCTION DisposeUserData
  3386.     ENDIF
  3387.  
  3388. ;
  3389. ; pascal OSErr NewUserDataFromHandle(Handle h, UserData *theUserData)
  3390. ;
  3391.     IF ¬ GENERATINGCFM THEN
  3392.         Macro
  3393.         _NewUserDataFromHandle
  3394.             move.w              #$0131,d0
  3395.             dc.w                $AAAA
  3396.         EndM
  3397.     ELSE
  3398.         IMPORT_CFM_FUNCTION NewUserDataFromHandle
  3399.     ENDIF
  3400.  
  3401. ;
  3402. ; pascal OSErr PutUserDataIntoHandle(UserData theUserData, Handle h)
  3403. ;
  3404.     IF ¬ GENERATINGCFM THEN
  3405.         Macro
  3406.         _PutUserDataIntoHandle
  3407.             move.w              #$0132,d0
  3408.             dc.w                $AAAA
  3409.         EndM
  3410.     ELSE
  3411.         IMPORT_CFM_FUNCTION PutUserDataIntoHandle
  3412.     ENDIF
  3413.  
  3414. ;
  3415. ; pascal void GetMediaNextInterestingTime(Media theMedia, short interestingTimeFlags, TimeValue time, Fixed rate, TimeValue *interestingTime, TimeValue *interestingDuration)
  3416. ;
  3417.     IF ¬ GENERATINGCFM THEN
  3418.         Macro
  3419.         _GetMediaNextInterestingTime
  3420.             move.w              #$016D,d0
  3421.             dc.w                $AAAA
  3422.         EndM
  3423.     ELSE
  3424.         IMPORT_CFM_FUNCTION GetMediaNextInterestingTime
  3425.     ENDIF
  3426.  
  3427. ;
  3428. ; pascal void GetTrackNextInterestingTime(Track theTrack, short interestingTimeFlags, TimeValue time, Fixed rate, TimeValue *interestingTime, TimeValue *interestingDuration)
  3429. ;
  3430.     IF ¬ GENERATINGCFM THEN
  3431.         Macro
  3432.         _GetTrackNextInterestingTime
  3433.             move.w              #$00E2,d0
  3434.             dc.w                $AAAA
  3435.         EndM
  3436.     ELSE
  3437.         IMPORT_CFM_FUNCTION GetTrackNextInterestingTime
  3438.     ENDIF
  3439.  
  3440. ;
  3441. ; pascal void GetMovieNextInterestingTime(Movie theMovie, short interestingTimeFlags, short numMediaTypes, const OSType *whichMediaTypes, TimeValue time, Fixed rate, TimeValue *interestingTime, TimeValue *interestingDuration)
  3442. ;
  3443.     IF ¬ GENERATINGCFM THEN
  3444.         Macro
  3445.         _GetMovieNextInterestingTime
  3446.             move.w              #$010E,d0
  3447.             dc.w                $AAAA
  3448.         EndM
  3449.     ELSE
  3450.         IMPORT_CFM_FUNCTION GetMovieNextInterestingTime
  3451.     ENDIF
  3452.  
  3453. ;
  3454. ; pascal OSErr CreateMovieFile(const FSSpec *fileSpec, OSType creator, ScriptCode scriptTag, long createMovieFileFlags, short *resRefNum, Movie *newmovie)
  3455. ;
  3456.     IF ¬ GENERATINGCFM THEN
  3457.         Macro
  3458.         _CreateMovieFile
  3459.             move.w              #$0191,d0
  3460.             dc.w                $AAAA
  3461.         EndM
  3462.     ELSE
  3463.         IMPORT_CFM_FUNCTION CreateMovieFile
  3464.     ENDIF
  3465.  
  3466. ;
  3467. ; pascal OSErr OpenMovieFile(const FSSpec *fileSpec, short *resRefNum, SInt8 permission)
  3468. ;
  3469.     IF ¬ GENERATINGCFM THEN
  3470.         Macro
  3471.         _OpenMovieFile
  3472.             move.w              #$0192,d0
  3473.             dc.w                $AAAA
  3474.         EndM
  3475.     ELSE
  3476.         IMPORT_CFM_FUNCTION OpenMovieFile
  3477.     ENDIF
  3478.  
  3479. ;
  3480. ; pascal OSErr CloseMovieFile(short resRefNum)
  3481. ;
  3482.     IF ¬ GENERATINGCFM THEN
  3483.         Macro
  3484.         _CloseMovieFile
  3485.             move.w              #$00D5,d0
  3486.             dc.w                $AAAA
  3487.         EndM
  3488.     ELSE
  3489.         IMPORT_CFM_FUNCTION CloseMovieFile
  3490.     ENDIF
  3491.  
  3492. ;
  3493. ; pascal OSErr DeleteMovieFile(const FSSpec *fileSpec)
  3494. ;
  3495.     IF ¬ GENERATINGCFM THEN
  3496.         Macro
  3497.         _DeleteMovieFile
  3498.             move.w              #$0175,d0
  3499.             dc.w                $AAAA
  3500.         EndM
  3501.     ELSE
  3502.         IMPORT_CFM_FUNCTION DeleteMovieFile
  3503.     ENDIF
  3504.  
  3505. ;
  3506. ; pascal OSErr NewMovieFromFile(Movie *theMovie, short resRefNum, short *resId, StringPtr resName, short newMovieFlags, Boolean *dataRefWasChanged)
  3507. ;
  3508.     IF ¬ GENERATINGCFM THEN
  3509.         Macro
  3510.         _NewMovieFromFile
  3511.             move.w              #$00F0,d0
  3512.             dc.w                $AAAA
  3513.         EndM
  3514.     ELSE
  3515.         IMPORT_CFM_FUNCTION NewMovieFromFile
  3516.     ENDIF
  3517.  
  3518. ;
  3519. ; pascal OSErr NewMovieFromHandle(Movie *theMovie, Handle h, short newMovieFlags, Boolean *dataRefWasChanged)
  3520. ;
  3521.     IF ¬ GENERATINGCFM THEN
  3522.         Macro
  3523.         _NewMovieFromHandle
  3524.             move.w              #$00F1,d0
  3525.             dc.w                $AAAA
  3526.         EndM
  3527.     ELSE
  3528.         IMPORT_CFM_FUNCTION NewMovieFromHandle
  3529.     ENDIF
  3530.  
  3531. ;
  3532. ; pascal OSErr NewMovieFromDataFork(Movie *theMovie, short fRefNum, long fileOffset, short newMovieFlags, Boolean *dataRefWasChanged)
  3533. ;
  3534.     IF ¬ GENERATINGCFM THEN
  3535.         Macro
  3536.         _NewMovieFromDataFork
  3537.             move.w              #$01B3,d0
  3538.             dc.w                $AAAA
  3539.         EndM
  3540.     ELSE
  3541.         IMPORT_CFM_FUNCTION NewMovieFromDataFork
  3542.     ENDIF
  3543.  
  3544. ;
  3545. ; pascal OSErr NewMovieFromUserProc(Movie *m, short flags, Boolean *dataRefWasChanged, GetMovieUPP getProc, void *refCon, Handle defaultDataRef, OSType dataRefType)
  3546. ;
  3547.     IF ¬ GENERATINGCFM THEN
  3548.         Macro
  3549.         _NewMovieFromUserProc
  3550.             move.w              #$01EC,d0
  3551.             dc.w                $AAAA
  3552.         EndM
  3553.     ELSE
  3554.         IMPORT_CFM_FUNCTION NewMovieFromUserProc
  3555.     ENDIF
  3556.  
  3557. ;
  3558. ; pascal OSErr NewMovieFromDataRef(Movie *m, short flags, short *id, Handle dataRef, OSType dataRefType)
  3559. ;
  3560.     IF ¬ GENERATINGCFM THEN
  3561.         Macro
  3562.         _NewMovieFromDataRef
  3563.             move.w              #$0220,d0
  3564.             dc.w                $AAAA
  3565.         EndM
  3566.     ELSE
  3567.         IMPORT_CFM_FUNCTION NewMovieFromDataRef
  3568.     ENDIF
  3569.  
  3570. ;
  3571. ; pascal OSErr AddMovieResource(Movie theMovie, short resRefNum, short *resId, ConstStr255Param resName)
  3572. ;
  3573.     IF ¬ GENERATINGCFM THEN
  3574.         Macro
  3575.         _AddMovieResource
  3576.             move.w              #$00D7,d0
  3577.             dc.w                $AAAA
  3578.         EndM
  3579.     ELSE
  3580.         IMPORT_CFM_FUNCTION AddMovieResource
  3581.     ENDIF
  3582.  
  3583. ;
  3584. ; pascal OSErr UpdateMovieResource(Movie theMovie, short resRefNum, short resId, ConstStr255Param resName)
  3585. ;
  3586.     IF ¬ GENERATINGCFM THEN
  3587.         Macro
  3588.         _UpdateMovieResource
  3589.             move.w              #$00D8,d0
  3590.             dc.w                $AAAA
  3591.         EndM
  3592.     ELSE
  3593.         IMPORT_CFM_FUNCTION UpdateMovieResource
  3594.     ENDIF
  3595.  
  3596. ;
  3597. ; pascal OSErr RemoveMovieResource(short resRefNum, short resId)
  3598. ;
  3599.     IF ¬ GENERATINGCFM THEN
  3600.         Macro
  3601.         _RemoveMovieResource
  3602.             move.w              #$0176,d0
  3603.             dc.w                $AAAA
  3604.         EndM
  3605.     ELSE
  3606.         IMPORT_CFM_FUNCTION RemoveMovieResource
  3607.     ENDIF
  3608.  
  3609. ;
  3610. ; pascal Boolean HasMovieChanged(Movie theMovie)
  3611. ;
  3612.     IF ¬ GENERATINGCFM THEN
  3613.         Macro
  3614.         _HasMovieChanged
  3615.             move.w              #$00D9,d0
  3616.             dc.w                $AAAA
  3617.         EndM
  3618.     ELSE
  3619.         IMPORT_CFM_FUNCTION HasMovieChanged
  3620.     ENDIF
  3621.  
  3622. ;
  3623. ; pascal void ClearMovieChanged(Movie theMovie)
  3624. ;
  3625.     IF ¬ GENERATINGCFM THEN
  3626.         Macro
  3627.         _ClearMovieChanged
  3628.             move.w              #$0113,d0
  3629.             dc.w                $AAAA
  3630.         EndM
  3631.     ELSE
  3632.         IMPORT_CFM_FUNCTION ClearMovieChanged
  3633.     ENDIF
  3634.  
  3635. ;
  3636. ; pascal OSErr SetMovieDefaultDataRef(Movie theMovie, Handle dataRef, OSType dataRefType)
  3637. ;
  3638.     IF ¬ GENERATINGCFM THEN
  3639.         Macro
  3640.         _SetMovieDefaultDataRef
  3641.             move.w              #$01C1,d0
  3642.             dc.w                $AAAA
  3643.         EndM
  3644.     ELSE
  3645.         IMPORT_CFM_FUNCTION SetMovieDefaultDataRef
  3646.     ENDIF
  3647.  
  3648. ;
  3649. ; pascal OSErr GetMovieDefaultDataRef(Movie theMovie, Handle *dataRef, OSType *dataRefType)
  3650. ;
  3651.     IF ¬ GENERATINGCFM THEN
  3652.         Macro
  3653.         _GetMovieDefaultDataRef
  3654.             move.w              #$01D2,d0
  3655.             dc.w                $AAAA
  3656.         EndM
  3657.     ELSE
  3658.         IMPORT_CFM_FUNCTION GetMovieDefaultDataRef
  3659.     ENDIF
  3660.  
  3661. ;
  3662. ; pascal OSErr SetMovieColorTable(Movie theMovie, CTabHandle ctab)
  3663. ;
  3664.     IF ¬ GENERATINGCFM THEN
  3665.         Macro
  3666.         _SetMovieColorTable
  3667.             move.w              #$0205,d0
  3668.             dc.w                $AAAA
  3669.         EndM
  3670.     ELSE
  3671.         IMPORT_CFM_FUNCTION SetMovieColorTable
  3672.     ENDIF
  3673.  
  3674. ;
  3675. ; pascal OSErr GetMovieColorTable(Movie theMovie, CTabHandle *ctab)
  3676. ;
  3677.     IF ¬ GENERATINGCFM THEN
  3678.         Macro
  3679.         _GetMovieColorTable
  3680.             move.w              #$0206,d0
  3681.             dc.w                $AAAA
  3682.         EndM
  3683.     ELSE
  3684.         IMPORT_CFM_FUNCTION GetMovieColorTable
  3685.     ENDIF
  3686.  
  3687. ;
  3688. ; pascal void FlattenMovie(Movie theMovie, long movieFlattenFlags, const FSSpec *theFile, OSType creator, ScriptCode scriptTag, long createMovieFileFlags, short *resId, ConstStr255Param resName)
  3689. ;
  3690.     IF ¬ GENERATINGCFM THEN
  3691.         Macro
  3692.         _FlattenMovie
  3693.             move.w              #$019B,d0
  3694.             dc.w                $AAAA
  3695.         EndM
  3696.     ELSE
  3697.         IMPORT_CFM_FUNCTION FlattenMovie
  3698.     ENDIF
  3699.  
  3700. ;
  3701. ; pascal Movie FlattenMovieData(Movie theMovie, long movieFlattenFlags, const FSSpec *theFile, OSType creator, ScriptCode scriptTag, long createMovieFileFlags)
  3702. ;
  3703.     IF ¬ GENERATINGCFM THEN
  3704.         Macro
  3705.         _FlattenMovieData
  3706.             move.w              #$019C,d0
  3707.             dc.w                $AAAA
  3708.         EndM
  3709.     ELSE
  3710.         IMPORT_CFM_FUNCTION FlattenMovieData
  3711.     ENDIF
  3712.  
  3713. ;
  3714. ; pascal void SetMovieProgressProc(Movie theMovie, MovieProgressUPP p, long refcon)
  3715. ;
  3716.     IF ¬ GENERATINGCFM THEN
  3717.         Macro
  3718.         _SetMovieProgressProc
  3719.             move.w              #$019A,d0
  3720.             dc.w                $AAAA
  3721.         EndM
  3722.     ELSE
  3723.         IMPORT_CFM_FUNCTION SetMovieProgressProc
  3724.     ENDIF
  3725.  
  3726. ;
  3727. ; pascal OSErr MovieSearchText(Movie theMovie, Ptr text, long size, long searchFlags, Track *searchTrack, TimeValue *searchTime, long *searchOffset)
  3728. ;
  3729.     IF ¬ GENERATINGCFM THEN
  3730.         Macro
  3731.         _MovieSearchText
  3732.             move.w              #$0207,d0
  3733.             dc.w                $AAAA
  3734.         EndM
  3735.     ELSE
  3736.         IMPORT_CFM_FUNCTION MovieSearchText
  3737.     ENDIF
  3738.  
  3739. ;
  3740. ; pascal void GetPosterBox(Movie theMovie, Rect *boxRect)
  3741. ;
  3742.     IF ¬ GENERATINGCFM THEN
  3743.         Macro
  3744.         _GetPosterBox
  3745.             move.w              #$016F,d0
  3746.             dc.w                $AAAA
  3747.         EndM
  3748.     ELSE
  3749.         IMPORT_CFM_FUNCTION GetPosterBox
  3750.     ENDIF
  3751.  
  3752. ;
  3753. ; pascal void SetPosterBox(Movie theMovie, const Rect *boxRect)
  3754. ;
  3755.     IF ¬ GENERATINGCFM THEN
  3756.         Macro
  3757.         _SetPosterBox
  3758.             move.w              #$0170,d0
  3759.             dc.w                $AAAA
  3760.         EndM
  3761.     ELSE
  3762.         IMPORT_CFM_FUNCTION SetPosterBox
  3763.     ENDIF
  3764.  
  3765. ;
  3766. ; pascal RgnHandle GetMovieSegmentDisplayBoundsRgn(Movie theMovie, TimeValue time, TimeValue duration)
  3767. ;
  3768.     IF ¬ GENERATINGCFM THEN
  3769.         Macro
  3770.         _GetMovieSegmentDisplayBoundsRgn
  3771.             move.w              #$016C,d0
  3772.             dc.w                $AAAA
  3773.         EndM
  3774.     ELSE
  3775.         IMPORT_CFM_FUNCTION GetMovieSegmentDisplayBoundsRgn
  3776.     ENDIF
  3777.  
  3778. ;
  3779. ; pascal RgnHandle GetTrackSegmentDisplayBoundsRgn(Track theTrack, TimeValue time, TimeValue duration)
  3780. ;
  3781.     IF ¬ GENERATINGCFM THEN
  3782.         Macro
  3783.         _GetTrackSegmentDisplayBoundsRgn
  3784.             move.w              #$016B,d0
  3785.             dc.w                $AAAA
  3786.         EndM
  3787.     ELSE
  3788.         IMPORT_CFM_FUNCTION GetTrackSegmentDisplayBoundsRgn
  3789.     ENDIF
  3790.  
  3791. ;
  3792. ; pascal void SetMovieCoverProcs(Movie theMovie, MovieRgnCoverUPP uncoverProc, MovieRgnCoverUPP coverProc, long refcon)
  3793. ;
  3794.     IF ¬ GENERATINGCFM THEN
  3795.         Macro
  3796.         _SetMovieCoverProcs
  3797.             move.w              #$0179,d0
  3798.             dc.w                $AAAA
  3799.         EndM
  3800.     ELSE
  3801.         IMPORT_CFM_FUNCTION SetMovieCoverProcs
  3802.     ENDIF
  3803.  
  3804. ;
  3805. ; pascal OSErr GetMovieCoverProcs(Movie theMovie, MovieRgnCoverUPP *uncoverProc, MovieRgnCoverUPP *coverProc, long *refcon)
  3806. ;
  3807.     IF ¬ GENERATINGCFM THEN
  3808.         Macro
  3809.         _GetMovieCoverProcs
  3810.             move.w              #$01DD,d0
  3811.             dc.w                $AAAA
  3812.         EndM
  3813.     ELSE
  3814.         IMPORT_CFM_FUNCTION GetMovieCoverProcs
  3815.     ENDIF
  3816.  
  3817. ;
  3818. ; pascal ComponentResult GetTrackStatus(Track theTrack)
  3819. ;
  3820.     IF ¬ GENERATINGCFM THEN
  3821.         Macro
  3822.         _GetTrackStatus
  3823.             move.w              #$0172,d0
  3824.             dc.w                $AAAA
  3825.         EndM
  3826.     ELSE
  3827.         IMPORT_CFM_FUNCTION GetTrackStatus
  3828.     ENDIF
  3829.  
  3830. ;
  3831. ; pascal ComponentResult GetMovieStatus(Movie theMovie, Track *firstProblemTrack)
  3832. ;
  3833.     IF ¬ GENERATINGCFM THEN
  3834.         Macro
  3835.         _GetMovieStatus
  3836.             move.w              #$0173,d0
  3837.             dc.w                $AAAA
  3838.         EndM
  3839.     ELSE
  3840.         IMPORT_CFM_FUNCTION GetMovieStatus
  3841.     ENDIF
  3842.  
  3843. ;
  3844. ;***
  3845. ;    Movie Controller support routines
  3846. ;***
  3847. ;
  3848. ;
  3849. ; pascal ComponentInstance NewMovieController(Movie theMovie, const Rect *movieRect, long someFlags)
  3850. ;
  3851.     IF ¬ GENERATINGCFM THEN
  3852.         Macro
  3853.         _NewMovieController
  3854.             move.w              #$018A,d0
  3855.             dc.w                $AAAA
  3856.         EndM
  3857.     ELSE
  3858.         IMPORT_CFM_FUNCTION NewMovieController
  3859.     ENDIF
  3860.  
  3861. ;
  3862. ; pascal void DisposeMovieController(ComponentInstance mc)
  3863. ;
  3864.     IF ¬ GENERATINGCFM THEN
  3865.         Macro
  3866.         _DisposeMovieController
  3867.             move.w              #$018B,d0
  3868.             dc.w                $AAAA
  3869.         EndM
  3870.     ELSE
  3871.         IMPORT_CFM_FUNCTION DisposeMovieController
  3872.     ENDIF
  3873.  
  3874. ;
  3875. ; pascal void ShowMovieInformation(Movie theMovie, ModalFilterUPP filterProc, long refCon)
  3876. ;
  3877.     IF ¬ GENERATINGCFM THEN
  3878.         Macro
  3879.         _ShowMovieInformation
  3880.             move.w              #$0209,d0
  3881.             dc.w                $AAAA
  3882.         EndM
  3883.     ELSE
  3884.         IMPORT_CFM_FUNCTION ShowMovieInformation
  3885.     ENDIF
  3886.  
  3887. ;
  3888. ;****
  3889. ;    Scrap routines
  3890. ;****
  3891. ;
  3892. ;
  3893. ; pascal OSErr PutMovieOnScrap(Movie theMovie, long movieScrapFlags)
  3894. ;
  3895.     IF ¬ GENERATINGCFM THEN
  3896.         Macro
  3897.         _PutMovieOnScrap
  3898.             move.w              #$018C,d0
  3899.             dc.w                $AAAA
  3900.         EndM
  3901.     ELSE
  3902.         IMPORT_CFM_FUNCTION PutMovieOnScrap
  3903.     ENDIF
  3904.  
  3905. ;
  3906. ; pascal Movie NewMovieFromScrap(long newMovieFlags)
  3907. ;
  3908.     IF ¬ GENERATINGCFM THEN
  3909.         Macro
  3910.         _NewMovieFromScrap
  3911.             move.w              #$018D,d0
  3912.             dc.w                $AAAA
  3913.         EndM
  3914.     ELSE
  3915.         IMPORT_CFM_FUNCTION NewMovieFromScrap
  3916.     ENDIF
  3917.  
  3918. ;
  3919. ;****
  3920. ;    DataRef routines
  3921. ;****
  3922. ;
  3923. ;
  3924. ; pascal OSErr GetMediaDataRef(Media theMedia, short index, Handle *dataRef, OSType *dataRefType, long *dataRefAttributes)
  3925. ;
  3926.     IF ¬ GENERATINGCFM THEN
  3927.         Macro
  3928.         _GetMediaDataRef
  3929.             move.w              #$0197,d0
  3930.             dc.w                $AAAA
  3931.         EndM
  3932.     ELSE
  3933.         IMPORT_CFM_FUNCTION GetMediaDataRef
  3934.     ENDIF
  3935.  
  3936. ;
  3937. ; pascal OSErr SetMediaDataRef(Media theMedia, short index, Handle dataRef, OSType dataRefType)
  3938. ;
  3939.     IF ¬ GENERATINGCFM THEN
  3940.         Macro
  3941.         _SetMediaDataRef
  3942.             move.w              #$01C9,d0
  3943.             dc.w                $AAAA
  3944.         EndM
  3945.     ELSE
  3946.         IMPORT_CFM_FUNCTION SetMediaDataRef
  3947.     ENDIF
  3948.  
  3949. ;
  3950. ; pascal OSErr SetMediaDataRefAttributes(Media theMedia, short index, long dataRefAttributes)
  3951. ;
  3952.     IF ¬ GENERATINGCFM THEN
  3953.         Macro
  3954.         _SetMediaDataRefAttributes
  3955.             move.w              #$01CA,d0
  3956.             dc.w                $AAAA
  3957.         EndM
  3958.     ELSE
  3959.         IMPORT_CFM_FUNCTION SetMediaDataRefAttributes
  3960.     ENDIF
  3961.  
  3962. ;
  3963. ; pascal OSErr AddMediaDataRef(Media theMedia, short *index, Handle dataRef, OSType dataRefType)
  3964. ;
  3965.     IF ¬ GENERATINGCFM THEN
  3966.         Macro
  3967.         _AddMediaDataRef
  3968.             move.w              #$0198,d0
  3969.             dc.w                $AAAA
  3970.         EndM
  3971.     ELSE
  3972.         IMPORT_CFM_FUNCTION AddMediaDataRef
  3973.     ENDIF
  3974.  
  3975. ;
  3976. ; pascal OSErr GetMediaDataRefCount(Media theMedia, short *count)
  3977. ;
  3978.     IF ¬ GENERATINGCFM THEN
  3979.         Macro
  3980.         _GetMediaDataRefCount
  3981.             move.w              #$0199,d0
  3982.             dc.w                $AAAA
  3983.         EndM
  3984.     ELSE
  3985.         IMPORT_CFM_FUNCTION GetMediaDataRefCount
  3986.     ENDIF
  3987.  
  3988. ;
  3989. ;****
  3990. ;    Playback hint routines
  3991. ;****
  3992. ;
  3993. ;
  3994. ; pascal void SetMoviePlayHints(Movie theMovie, long flags, long flagsMask)
  3995. ;
  3996.     IF ¬ GENERATINGCFM THEN
  3997.         Macro
  3998.         _SetMoviePlayHints
  3999.             move.w              #$01A1,d0
  4000.             dc.w                $AAAA
  4001.         EndM
  4002.     ELSE
  4003.         IMPORT_CFM_FUNCTION SetMoviePlayHints
  4004.     ENDIF
  4005.  
  4006. ;
  4007. ; pascal void SetMediaPlayHints(Media theMedia, long flags, long flagsMask)
  4008. ;
  4009.     IF ¬ GENERATINGCFM THEN
  4010.         Macro
  4011.         _SetMediaPlayHints
  4012.             move.w              #$01A2,d0
  4013.             dc.w                $AAAA
  4014.         EndM
  4015.     ELSE
  4016.         IMPORT_CFM_FUNCTION SetMediaPlayHints
  4017.     ENDIF
  4018.  
  4019. ;
  4020. ;****
  4021. ;    Load time track hints
  4022. ;****
  4023. ;
  4024.  
  4025. preloadAlways                    EQU        $00000001
  4026. preloadOnlyIfEnabled            EQU        $00000002
  4027. ;
  4028. ; pascal void SetTrackLoadSettings(Track theTrack, TimeValue preloadTime, TimeValue preloadDuration, long preloadFlags, long defaultHints)
  4029. ;
  4030.     IF ¬ GENERATINGCFM THEN
  4031.         Macro
  4032.         _SetTrackLoadSettings
  4033.             move.w              #$01E3,d0
  4034.             dc.w                $AAAA
  4035.         EndM
  4036.     ELSE
  4037.         IMPORT_CFM_FUNCTION SetTrackLoadSettings
  4038.     ENDIF
  4039.  
  4040. ;
  4041. ; pascal void GetTrackLoadSettings(Track theTrack, TimeValue *preloadTime, TimeValue *preloadDuration, long *preloadFlags, long *defaultHints)
  4042. ;
  4043.     IF ¬ GENERATINGCFM THEN
  4044.         Macro
  4045.         _GetTrackLoadSettings
  4046.             move.w              #$01E4,d0
  4047.             dc.w                $AAAA
  4048.         EndM
  4049.     ELSE
  4050.         IMPORT_CFM_FUNCTION GetTrackLoadSettings
  4051.     ENDIF
  4052.  
  4053. ;
  4054. ;****
  4055. ;    Big screen TV
  4056. ;****
  4057. ;
  4058.  
  4059. fullScreenHideCursor            EQU        $00000001
  4060. fullScreenAllowEvents            EQU        $00000002
  4061. fullScreenDontChangeMenuBar        EQU        $00000004
  4062. fullScreenPreflightSize            EQU        $00000008
  4063. ;
  4064. ; pascal OSErr BeginFullScreen(Ptr *restoreState, GDHandle whichGD, short *desiredWidth, short *desiredHeight, WindowPtr *newWindow, RGBColor *eraseColor, long flags)
  4065. ;
  4066.     IF ¬ GENERATINGCFM THEN
  4067.         Macro
  4068.         _BeginFullScreen
  4069.             move.w              #$0233,d0
  4070.             dc.w                $AAAA
  4071.         EndM
  4072.     ELSE
  4073.         IMPORT_CFM_FUNCTION BeginFullScreen
  4074.     ENDIF
  4075.  
  4076. ;
  4077. ; pascal OSErr EndFullScreen(Ptr fullState, long flags)
  4078. ;
  4079.     IF ¬ GENERATINGCFM THEN
  4080.         Macro
  4081.         _EndFullScreen
  4082.             move.w              #$0234,d0
  4083.             dc.w                $AAAA
  4084.         EndM
  4085.     ELSE
  4086.         IMPORT_CFM_FUNCTION EndFullScreen
  4087.     ENDIF
  4088.  
  4089. ;
  4090. ;****
  4091. ;    Sprite Toolbox
  4092. ;****
  4093. ;
  4094.  
  4095. kBackgroundSpriteLayerNum        EQU        32767
  4096. ;   Sprite Properties
  4097.  
  4098. kSpritePropertyMatrix            EQU        1
  4099. kSpritePropertyImageDescription    EQU        2
  4100. kSpritePropertyImageDataPtr        EQU        3
  4101. kSpritePropertyVisible            EQU        4
  4102. kSpritePropertyLayer            EQU        5
  4103. kSpritePropertyGraphicsMode        EQU        6
  4104. kSpritePropertyImageIndex        EQU        100
  4105. kSpriteTrackPropertyBackgroundColor EQU    101
  4106. kSpriteTrackPropertyOffscreenBitDepth EQU 102
  4107. kSpriteTrackPropertySampleFormat EQU    103
  4108. ;  flagsIn for SpriteWorldIdle
  4109.  
  4110. kOnlyDrawToSpriteWorld            EQU        $00000001
  4111. kSpriteWorldPreflight            EQU        $00000002
  4112. ;  flagsOut for SpriteWorldIdle
  4113.  
  4114. kSpriteWorldDidDraw                EQU        $00000001
  4115. kSpriteWorldNeedsToDraw            EQU        $00000002
  4116. ;  flags for sprite track sample format
  4117.  
  4118. kKeyFrameAndSingleOverride        EQU        $00000002
  4119. kKeyFrameAndAllOverrides        EQU        $00000004
  4120. ;
  4121. ; pascal OSErr NewSpriteWorld(SpriteWorld *newSpriteWorld, GWorldPtr destination, GWorldPtr spriteLayer, RGBColor *backgroundColor, GWorldPtr background)
  4122. ;
  4123.     IF ¬ GENERATINGCFM THEN
  4124.         Macro
  4125.         _NewSpriteWorld
  4126.             move.w              #$0239,d0
  4127.             dc.w                $AAAA
  4128.         EndM
  4129.     ELSE
  4130.         IMPORT_CFM_FUNCTION NewSpriteWorld
  4131.     ENDIF
  4132.  
  4133. ;
  4134. ; pascal void DisposeSpriteWorld(SpriteWorld theSpriteWorld)
  4135. ;
  4136.     IF ¬ GENERATINGCFM THEN
  4137.         Macro
  4138.         _DisposeSpriteWorld
  4139.             move.w              #$023A,d0
  4140.             dc.w                $AAAA
  4141.         EndM
  4142.     ELSE
  4143.         IMPORT_CFM_FUNCTION DisposeSpriteWorld
  4144.     ENDIF
  4145.  
  4146. ;
  4147. ; pascal OSErr SetSpriteWorldClip(SpriteWorld theSpriteWorld, RgnHandle clipRgn)
  4148. ;
  4149.     IF ¬ GENERATINGCFM THEN
  4150.         Macro
  4151.         _SetSpriteWorldClip
  4152.             move.w              #$023B,d0
  4153.             dc.w                $AAAA
  4154.         EndM
  4155.     ELSE
  4156.         IMPORT_CFM_FUNCTION SetSpriteWorldClip
  4157.     ENDIF
  4158.  
  4159. ;
  4160. ; pascal OSErr SetSpriteWorldMatrix(SpriteWorld theSpriteWorld, const MatrixRecord *matrix)
  4161. ;
  4162.     IF ¬ GENERATINGCFM THEN
  4163.         Macro
  4164.         _SetSpriteWorldMatrix
  4165.             move.w              #$023C,d0
  4166.             dc.w                $AAAA
  4167.         EndM
  4168.     ELSE
  4169.         IMPORT_CFM_FUNCTION SetSpriteWorldMatrix
  4170.     ENDIF
  4171.  
  4172. ;
  4173. ; pascal OSErr SpriteWorldIdle(SpriteWorld theSpriteWorld, long flagsIn, long *flagsOut)
  4174. ;
  4175.     IF ¬ GENERATINGCFM THEN
  4176.         Macro
  4177.         _SpriteWorldIdle
  4178.             move.w              #$023D,d0
  4179.             dc.w                $AAAA
  4180.         EndM
  4181.     ELSE
  4182.         IMPORT_CFM_FUNCTION SpriteWorldIdle
  4183.     ENDIF
  4184.  
  4185. ;
  4186. ; pascal OSErr InvalidateSpriteWorld(SpriteWorld theSpriteWorld, Rect *invalidArea)
  4187. ;
  4188.     IF ¬ GENERATINGCFM THEN
  4189.         Macro
  4190.         _InvalidateSpriteWorld
  4191.             move.w              #$023E,d0
  4192.             dc.w                $AAAA
  4193.         EndM
  4194.     ELSE
  4195.         IMPORT_CFM_FUNCTION InvalidateSpriteWorld
  4196.     ENDIF
  4197.  
  4198. ;
  4199. ; pascal OSErr SpriteWorldHitTest(SpriteWorld theSpriteWorld, long flags, Point loc, Sprite *spriteHit)
  4200. ;
  4201.     IF ¬ GENERATINGCFM THEN
  4202.         Macro
  4203.         _SpriteWorldHitTest
  4204.             move.w              #$0246,d0
  4205.             dc.w                $AAAA
  4206.         EndM
  4207.     ELSE
  4208.         IMPORT_CFM_FUNCTION SpriteWorldHitTest
  4209.     ENDIF
  4210.  
  4211. ;
  4212. ; pascal OSErr SpriteHitTest(Sprite theSprite, long flags, Point loc, Boolean *wasHit)
  4213. ;
  4214.     IF ¬ GENERATINGCFM THEN
  4215.         Macro
  4216.         _SpriteHitTest
  4217.             move.w              #$0247,d0
  4218.             dc.w                $AAAA
  4219.         EndM
  4220.     ELSE
  4221.         IMPORT_CFM_FUNCTION SpriteHitTest
  4222.     ENDIF
  4223.  
  4224. ;
  4225. ; pascal void DisposeAllSprites(SpriteWorld theSpriteWorld)
  4226. ;
  4227.     IF ¬ GENERATINGCFM THEN
  4228.         Macro
  4229.         _DisposeAllSprites
  4230.             move.w              #$023F,d0
  4231.             dc.w                $AAAA
  4232.         EndM
  4233.     ELSE
  4234.         IMPORT_CFM_FUNCTION DisposeAllSprites
  4235.     ENDIF
  4236.  
  4237. ;
  4238. ; pascal OSErr NewSprite(Sprite *newSprite, SpriteWorld itsSpriteWorld, ImageDescriptionHandle idh, Ptr imageDataPtr, MatrixRecord *matrix, Boolean visible, short layer)
  4239. ;
  4240.     IF ¬ GENERATINGCFM THEN
  4241.         Macro
  4242.         _NewSprite
  4243.             move.w              #$0240,d0
  4244.             dc.w                $AAAA
  4245.         EndM
  4246.     ELSE
  4247.         IMPORT_CFM_FUNCTION NewSprite
  4248.     ENDIF
  4249.  
  4250. ;
  4251. ; pascal void DisposeSprite(Sprite theSprite)
  4252. ;
  4253.     IF ¬ GENERATINGCFM THEN
  4254.         Macro
  4255.         _DisposeSprite
  4256.             move.w              #$0241,d0
  4257.             dc.w                $AAAA
  4258.         EndM
  4259.     ELSE
  4260.         IMPORT_CFM_FUNCTION DisposeSprite
  4261.     ENDIF
  4262.  
  4263. ;
  4264. ; pascal void InvalidateSprite(Sprite theSprite)
  4265. ;
  4266.     IF ¬ GENERATINGCFM THEN
  4267.         Macro
  4268.         _InvalidateSprite
  4269.             move.w              #$0242,d0
  4270.             dc.w                $AAAA
  4271.         EndM
  4272.     ELSE
  4273.         IMPORT_CFM_FUNCTION InvalidateSprite
  4274.     ENDIF
  4275.  
  4276. ;
  4277. ; pascal OSErr SetSpriteProperty(Sprite theSprite, long propertyType, void *propertyValue)
  4278. ;
  4279.     IF ¬ GENERATINGCFM THEN
  4280.         Macro
  4281.         _SetSpriteProperty
  4282.             move.w              #$0243,d0
  4283.             dc.w                $AAAA
  4284.         EndM
  4285.     ELSE
  4286.         IMPORT_CFM_FUNCTION SetSpriteProperty
  4287.     ENDIF
  4288.  
  4289. ;
  4290. ; pascal OSErr GetSpriteProperty(Sprite theSprite, long propertyType, void *propertyValue)
  4291. ;
  4292.     IF ¬ GENERATINGCFM THEN
  4293.         Macro
  4294.         _GetSpriteProperty
  4295.             move.w              #$0244,d0
  4296.             dc.w                $AAAA
  4297.         EndM
  4298.     ELSE
  4299.         IMPORT_CFM_FUNCTION GetSpriteProperty
  4300.     ENDIF
  4301.  
  4302. ;
  4303. ;****
  4304. ;    QT Atom Data Support
  4305. ;****
  4306. ;
  4307.  
  4308. kParentAtomIsContainer            EQU        0
  4309. ;  create and dispose QTAtomContainer objects
  4310. ;
  4311. ; pascal OSErr QTNewAtomContainer(QTAtomContainer *atomData)
  4312. ;
  4313.     IF ¬ GENERATINGCFM THEN
  4314.         Macro
  4315.         _QTNewAtomContainer
  4316.             move.w              #$020C,d0
  4317.             dc.w                $AAAA
  4318.         EndM
  4319.     ELSE
  4320.         IMPORT_CFM_FUNCTION QTNewAtomContainer
  4321.     ENDIF
  4322.  
  4323. ;
  4324. ; pascal OSErr QTDisposeAtomContainer(QTAtomContainer atomData)
  4325. ;
  4326.     IF ¬ GENERATINGCFM THEN
  4327.         Macro
  4328.         _QTDisposeAtomContainer
  4329.             move.w              #$020D,d0
  4330.             dc.w                $AAAA
  4331.         EndM
  4332.     ELSE
  4333.         IMPORT_CFM_FUNCTION QTDisposeAtomContainer
  4334.     ENDIF
  4335.  
  4336. ;  locating nested atoms within QTAtomContainer container
  4337. ;
  4338. ; pascal QTAtomType QTGetNextChildType(QTAtomContainer container, QTAtom parentAtom, QTAtomType currentChildType)
  4339. ;
  4340.     IF ¬ GENERATINGCFM THEN
  4341.         Macro
  4342.         _QTGetNextChildType
  4343.             move.w              #$020E,d0
  4344.             dc.w                $AAAA
  4345.         EndM
  4346.     ELSE
  4347.         IMPORT_CFM_FUNCTION QTGetNextChildType
  4348.     ENDIF
  4349.  
  4350. ;
  4351. ; pascal short QTCountChildrenOfType(QTAtomContainer container, QTAtom parentAtom, QTAtomType childType)
  4352. ;
  4353.     IF ¬ GENERATINGCFM THEN
  4354.         Macro
  4355.         _QTCountChildrenOfType
  4356.             move.w              #$020F,d0
  4357.             dc.w                $AAAA
  4358.         EndM
  4359.     ELSE
  4360.         IMPORT_CFM_FUNCTION QTCountChildrenOfType
  4361.     ENDIF
  4362.  
  4363. ;
  4364. ; pascal QTAtom QTFindChildByIndex(QTAtomContainer container, QTAtom parentAtom, QTAtomType atomType, short index, QTAtomID *id)
  4365. ;
  4366.     IF ¬ GENERATINGCFM THEN
  4367.         Macro
  4368.         _QTFindChildByIndex
  4369.             move.w              #$0210,d0
  4370.             dc.w                $AAAA
  4371.         EndM
  4372.     ELSE
  4373.         IMPORT_CFM_FUNCTION QTFindChildByIndex
  4374.     ENDIF
  4375.  
  4376. ;
  4377. ; pascal QTAtom QTFindChildByID(QTAtomContainer container, QTAtom parentAtom, QTAtomType atomType, QTAtomID id, short *index)
  4378. ;
  4379.     IF ¬ GENERATINGCFM THEN
  4380.         Macro
  4381.         _QTFindChildByID
  4382.             move.w              #$021D,d0
  4383.             dc.w                $AAAA
  4384.         EndM
  4385.     ELSE
  4386.         IMPORT_CFM_FUNCTION QTFindChildByID
  4387.     ENDIF
  4388.  
  4389. ;
  4390. ; pascal OSErr QTNextChildAnyType(QTAtomContainer container, QTAtom parentAtom, QTAtom currentChild, QTAtom *nextChild)
  4391. ;
  4392.     IF ¬ GENERATINGCFM THEN
  4393.         Macro
  4394.         _QTNextChildAnyType
  4395.             move.w              #$0200,d0
  4396.             dc.w                $AAAA
  4397.         EndM
  4398.     ELSE
  4399.         IMPORT_CFM_FUNCTION QTNextChildAnyType
  4400.     ENDIF
  4401.  
  4402. ;  set a leaf atom's data
  4403. ;
  4404. ; pascal OSErr QTSetAtomData(QTAtomContainer container, QTAtom atom, long dataSize, void *atomData)
  4405. ;
  4406.     IF ¬ GENERATINGCFM THEN
  4407.         Macro
  4408.         _QTSetAtomData
  4409.             move.w              #$0211,d0
  4410.             dc.w                $AAAA
  4411.         EndM
  4412.     ELSE
  4413.         IMPORT_CFM_FUNCTION QTSetAtomData
  4414.     ENDIF
  4415.  
  4416. ;  extracting data
  4417. ;
  4418. ; pascal OSErr QTCopyAtomDataToHandle(QTAtomContainer container, QTAtom atom, Handle targetHandle)
  4419. ;
  4420.     IF ¬ GENERATINGCFM THEN
  4421.         Macro
  4422.         _QTCopyAtomDataToHandle
  4423.             move.w              #$0212,d0
  4424.             dc.w                $AAAA
  4425.         EndM
  4426.     ELSE
  4427.         IMPORT_CFM_FUNCTION QTCopyAtomDataToHandle
  4428.     ENDIF
  4429.  
  4430. ;
  4431. ; pascal OSErr QTCopyAtomDataToPtr(QTAtomContainer container, QTAtom atom, Boolean sizeOrLessOK, long size, void *targetPtr, long *actualSize)
  4432. ;
  4433.     IF ¬ GENERATINGCFM THEN
  4434.         Macro
  4435.         _QTCopyAtomDataToPtr
  4436.             move.w              #$0213,d0
  4437.             dc.w                $AAAA
  4438.         EndM
  4439.     ELSE
  4440.         IMPORT_CFM_FUNCTION QTCopyAtomDataToPtr
  4441.     ENDIF
  4442.  
  4443. ;
  4444. ; pascal OSErr QTGetAtomTypeAndID(QTAtomContainer container, QTAtom atom, QTAtomType *atomType, QTAtomID *id)
  4445. ;
  4446.     IF ¬ GENERATINGCFM THEN
  4447.         Macro
  4448.         _QTGetAtomTypeAndID
  4449.             move.w              #$0232,d0
  4450.             dc.w                $AAAA
  4451.         EndM
  4452.     ELSE
  4453.         IMPORT_CFM_FUNCTION QTGetAtomTypeAndID
  4454.     ENDIF
  4455.  
  4456. ;  extract a copy of an atom and all of it's children, caller disposes
  4457. ;
  4458. ; pascal OSErr QTCopyAtom(QTAtomContainer container, QTAtom atom, QTAtomContainer *targetContainer)
  4459. ;
  4460.     IF ¬ GENERATINGCFM THEN
  4461.         Macro
  4462.         _QTCopyAtom
  4463.             move.w              #$0214,d0
  4464.             dc.w                $AAAA
  4465.         EndM
  4466.     ELSE
  4467.         IMPORT_CFM_FUNCTION QTCopyAtom
  4468.     ENDIF
  4469.  
  4470. ;  obtaining direct reference to atom data
  4471. ;
  4472. ; pascal OSErr QTLockContainer(QTAtomContainer container)
  4473. ;
  4474.     IF ¬ GENERATINGCFM THEN
  4475.         Macro
  4476.         _QTLockContainer
  4477.             move.w              #$0215,d0
  4478.             dc.w                $AAAA
  4479.         EndM
  4480.     ELSE
  4481.         IMPORT_CFM_FUNCTION QTLockContainer
  4482.     ENDIF
  4483.  
  4484. ;
  4485. ; pascal OSErr QTGetAtomDataPtr(QTAtomContainer container, QTAtom atom, long *dataSize, Ptr *atomData)
  4486. ;
  4487.     IF ¬ GENERATINGCFM THEN
  4488.         Macro
  4489.         _QTGetAtomDataPtr
  4490.             move.w              #$0216,d0
  4491.             dc.w                $AAAA
  4492.         EndM
  4493.     ELSE
  4494.         IMPORT_CFM_FUNCTION QTGetAtomDataPtr
  4495.     ENDIF
  4496.  
  4497. ;
  4498. ; pascal OSErr QTUnlockContainer(QTAtomContainer container)
  4499. ;
  4500.     IF ¬ GENERATINGCFM THEN
  4501.         Macro
  4502.         _QTUnlockContainer
  4503.             move.w              #$0217,d0
  4504.             dc.w                $AAAA
  4505.         EndM
  4506.     ELSE
  4507.         IMPORT_CFM_FUNCTION QTUnlockContainer
  4508.     ENDIF
  4509.  
  4510. ;
  4511. ; building QTAtomContainer trees
  4512. ; creates and inserts new atom at specified index, existing atoms at or after index are moved toward end of list
  4513. ; used for Top-Down tree creation
  4514. ;
  4515. ;
  4516. ; pascal OSErr QTInsertChild(QTAtomContainer container, QTAtom parentAtom, QTAtomType atomType, QTAtomID id, short index, long dataSize, void *data, QTAtom *newAtom)
  4517. ;
  4518.     IF ¬ GENERATINGCFM THEN
  4519.         Macro
  4520.         _QTInsertChild
  4521.             move.w              #$0218,d0
  4522.             dc.w                $AAAA
  4523.         EndM
  4524.     ELSE
  4525.         IMPORT_CFM_FUNCTION QTInsertChild
  4526.     ENDIF
  4527.  
  4528. ;  inserts children from childrenContainer as children of parentAtom
  4529. ;
  4530. ; pascal OSErr QTInsertChildren(QTAtomContainer container, QTAtom parentAtom, QTAtomContainer childrenContainer)
  4531. ;
  4532.     IF ¬ GENERATINGCFM THEN
  4533.         Macro
  4534.         _QTInsertChildren
  4535.             move.w              #$0219,d0
  4536.             dc.w                $AAAA
  4537.         EndM
  4538.     ELSE
  4539.         IMPORT_CFM_FUNCTION QTInsertChildren
  4540.     ENDIF
  4541.  
  4542. ;  destruction
  4543. ;
  4544. ; pascal OSErr QTRemoveAtom(QTAtomContainer container, QTAtom atom)
  4545. ;
  4546.     IF ¬ GENERATINGCFM THEN
  4547.         Macro
  4548.         _QTRemoveAtom
  4549.             move.w              #$021A,d0
  4550.             dc.w                $AAAA
  4551.         EndM
  4552.     ELSE
  4553.         IMPORT_CFM_FUNCTION QTRemoveAtom
  4554.     ENDIF
  4555.  
  4556. ;
  4557. ; pascal OSErr QTRemoveChildren(QTAtomContainer container, QTAtom atom)
  4558. ;
  4559.     IF ¬ GENERATINGCFM THEN
  4560.         Macro
  4561.         _QTRemoveChildren
  4562.             move.w              #$021B,d0
  4563.             dc.w                $AAAA
  4564.         EndM
  4565.     ELSE
  4566.         IMPORT_CFM_FUNCTION QTRemoveChildren
  4567.     ENDIF
  4568.  
  4569. ;  replacement must be same type as target
  4570. ;
  4571. ; pascal OSErr QTReplaceAtom(QTAtomContainer targetContainer, QTAtom targetAtom, QTAtomContainer replacementContainer, QTAtom replacementAtom)
  4572. ;
  4573.     IF ¬ GENERATINGCFM THEN
  4574.         Macro
  4575.         _QTReplaceAtom
  4576.             move.w              #$021C,d0
  4577.             dc.w                $AAAA
  4578.         EndM
  4579.     ELSE
  4580.         IMPORT_CFM_FUNCTION QTReplaceAtom
  4581.     ENDIF
  4582.  
  4583. ;
  4584. ; pascal OSErr QTSwapAtoms(QTAtomContainer container, QTAtom atom1, QTAtom atom2)
  4585. ;
  4586.     IF ¬ GENERATINGCFM THEN
  4587.         Macro
  4588.         _QTSwapAtoms
  4589.             move.w              #$01FF,d0
  4590.             dc.w                $AAAA
  4591.         EndM
  4592.     ELSE
  4593.         IMPORT_CFM_FUNCTION QTSwapAtoms
  4594.     ENDIF
  4595.  
  4596. ;
  4597. ; pascal OSErr QTSetAtomID(QTAtomContainer container, QTAtom atom, QTAtomID newID)
  4598. ;
  4599.     IF ¬ GENERATINGCFM THEN
  4600.         Macro
  4601.         _QTSetAtomID
  4602.             move.w              #$0231,d0
  4603.             dc.w                $AAAA
  4604.         EndM
  4605.     ELSE
  4606.         IMPORT_CFM_FUNCTION QTSetAtomID
  4607.     ENDIF
  4608.  
  4609. ;
  4610. ; pascal OSErr SetMediaPropertyAtom(Media theMedia, QTAtomContainer propertyAtom)
  4611. ;
  4612.     IF ¬ GENERATINGCFM THEN
  4613.         Macro
  4614.         _SetMediaPropertyAtom
  4615.             move.w              #$022E,d0
  4616.             dc.w                $AAAA
  4617.         EndM
  4618.     ELSE
  4619.         IMPORT_CFM_FUNCTION SetMediaPropertyAtom
  4620.     ENDIF
  4621.  
  4622. ;
  4623. ; pascal OSErr GetMediaPropertyAtom(Media theMedia, QTAtomContainer *propertyAtom)
  4624. ;
  4625.     IF ¬ GENERATINGCFM THEN
  4626.         Macro
  4627.         _GetMediaPropertyAtom
  4628.             move.w              #$022F,d0
  4629.             dc.w                $AAAA
  4630.         EndM
  4631.     ELSE
  4632.         IMPORT_CFM_FUNCTION GetMediaPropertyAtom
  4633.     ENDIF
  4634.  
  4635. ;
  4636. ;****
  4637. ;    QT International Text Atom Support
  4638. ;****
  4639. ;
  4640.  
  4641. kITextRemoveEverythingBut        EQU        $00
  4642. kITextRemoveLeaveSuggestedAlternate EQU    $02
  4643.  
  4644. kITextAtomType                    EQU        'itxt'
  4645. kITextStringAtomType            EQU        'text'
  4646. ;
  4647. ; pascal OSErr ITextAddString(QTAtomContainer container, QTAtom parentAtom, short theRegionCode, ConstStr255Param theString)
  4648. ;
  4649.     IF ¬ GENERATINGCFM THEN
  4650.         Macro
  4651.         _ITextAddString
  4652.             move.w              #$027A,d0
  4653.             dc.w                $AAAA
  4654.         EndM
  4655.     ELSE
  4656.         IMPORT_CFM_FUNCTION ITextAddString
  4657.     ENDIF
  4658.  
  4659. ;
  4660. ; pascal OSErr ITextRemoveString(QTAtomContainer container, QTAtom parentAtom, short theRegionCode, long flags)
  4661. ;
  4662.     IF ¬ GENERATINGCFM THEN
  4663.         Macro
  4664.         _ITextRemoveString
  4665.             move.w              #$027B,d0
  4666.             dc.w                $AAAA
  4667.         EndM
  4668.     ELSE
  4669.         IMPORT_CFM_FUNCTION ITextRemoveString
  4670.     ENDIF
  4671.  
  4672. ;
  4673. ; pascal OSErr ITextGetString(QTAtomContainer container, QTAtom parentAtom, short requestedRegion, short *foundRegion, StringPtr theString)
  4674. ;
  4675.     IF ¬ GENERATINGCFM THEN
  4676.         Macro
  4677.         _ITextGetString
  4678.             move.w              #$027C,d0
  4679.             dc.w                $AAAA
  4680.         EndM
  4681.     ELSE
  4682.         IMPORT_CFM_FUNCTION ITextGetString
  4683.     ENDIF
  4684.  
  4685. ;
  4686. ;************************
  4687. ;* modifier track types
  4688. ;*************************
  4689. ;
  4690.  
  4691. kTrackModifierInput                EQU        $696E                ; is really 'in'
  4692. kTrackModifierType                EQU        $7479                ; is really 'ty'
  4693. kTrackModifierReference            EQU        'ssrc'
  4694. kTrackModifierObjectID            EQU        'obid'
  4695. kTrackModifierInputName            EQU        'name'
  4696.  
  4697. kInputMapSubInputID                EQU        'subi'
  4698.  
  4699. kTrackModifierTypeMatrix        EQU        1
  4700. kTrackModifierTypeClip            EQU        2
  4701. kTrackModifierTypeGraphicsMode    EQU        5
  4702. kTrackModifierTypeVolume        EQU        3
  4703. kTrackModifierTypeBalance        EQU        4
  4704. kTrackModifierTypeImage            EQU        'vide'                ; was kTrackModifierTypeSpriteImage
  4705. kTrackModifierObjectMatrix        EQU        6
  4706. kTrackModifierObjectGraphicsMode EQU    7
  4707. kTrackModifierType3d4x4Matrix    EQU        8
  4708. kTrackModifierCameraData        EQU        9
  4709. kTrackModifierSoundLocalizationData EQU    10
  4710. ModifierTrackGraphicsModeRecord RECORD 0
  4711. graphicsMode             ds.l    1                ; offset: $0 (0)
  4712. opColor                     ds        RGBColor        ; offset: $4 (4)
  4713. sizeof                     EQU *                    ; size:   $A (10)
  4714.                         ENDR
  4715. ;
  4716. ;************************
  4717. ;* tween track types
  4718. ;*************************
  4719. ;
  4720.  
  4721. kTweenTypeShort                    EQU        1
  4722. kTweenTypeLong                    EQU        2
  4723. kTweenTypeFixed                    EQU        3
  4724. kTweenTypePoint                    EQU        4
  4725. kTweenTypeQDRect                EQU        5
  4726. kTweenTypeQDRegion                EQU        6
  4727. kTweenTypeMatrix                EQU        7
  4728. kTweenTypeRGBColor                EQU        8
  4729. kTweenTypeGraphicsModeWithRGBColor EQU    9
  4730. kTweenType3dScale                EQU        '3sca'
  4731. kTweenType3dTranslate            EQU        '3tra'
  4732. kTweenType3dRotate                EQU        '3rot'
  4733. kTweenType3dRotateAboutPoint    EQU        '3rap'
  4734. kTweenType3dRotateAboutAxis        EQU        '3rax'
  4735. kTweenType3dQuaternion            EQU        '3qua'
  4736. kTweenType3dMatrix                EQU        '3mat'
  4737. kTweenType3dCameraData            EQU        '3cam'
  4738. kTweenType3dSoundLocalizationData EQU    '3slc'
  4739.  
  4740. kTweenEntry                        EQU        'twen'
  4741. kTweenData                        EQU        'data'
  4742. kTweenType                        EQU        'twnt'
  4743. kTweenStartOffset                EQU        'twst'
  4744. kTweenDuration                    EQU        'twdu'
  4745. kTween3dInitialCondition        EQU        'icnd'
  4746. kTweenInterpolationStyle        EQU        'isty'
  4747. kTweenRegionData                EQU        'qdrg'
  4748. kTweenPictureData                EQU        'PICT'
  4749.  
  4750. internalComponentErr            EQU        -2070
  4751. notImplementedMusicOSErr        EQU        -2071
  4752. cantSendToSynthesizerOSErr        EQU        -2072
  4753. cantReceiveFromSynthesizerOSErr    EQU        -2073
  4754. illegalVoiceAllocationOSErr        EQU        -2074
  4755. illegalPartOSErr                EQU        -2075
  4756. illegalChannelOSErr                EQU        -2076
  4757. illegalKnobOSErr                EQU        -2077
  4758. illegalKnobValueOSErr            EQU        -2078
  4759. illegalInstrumentOSErr            EQU        -2079
  4760. illegalControllerOSErr            EQU        -2080
  4761. midiManagerAbsentOSErr            EQU        -2081
  4762. synthesizerNotRespondingOSErr    EQU        -2082
  4763. synthesizerOSErr                EQU        -2083
  4764. illegalNoteChannelOSErr            EQU        -2084
  4765. noteChannelNotAllocatedOSErr    EQU        -2085
  4766. tunePlayerFullOSErr                EQU        -2086
  4767. tuneParseOSErr                    EQU        -2087
  4768. ;
  4769. ;************************
  4770. ;* Video Media routines
  4771. ;*************************
  4772. ;
  4773.  
  4774. videoFlagDontLeanAhead            EQU        $00000001
  4775. ;  use these two routines at your own peril
  4776. ;
  4777. ; pascal ComponentResult VideoMediaResetStatistics(MediaHandler mh)
  4778. ;
  4779.     IF ¬ GENERATINGCFM THEN
  4780.         Macro
  4781.         _VideoMediaResetStatistics
  4782.             dc.w                $2F3C
  4783.             dc.w                $0000
  4784.             dc.w                $0105
  4785.             moveq               #0,d0
  4786.             dc.w                $A82A
  4787.         EndM
  4788.     ELSE
  4789.         IMPORT_CFM_FUNCTION VideoMediaResetStatistics
  4790.     ENDIF
  4791.  
  4792. ;
  4793. ; pascal ComponentResult VideoMediaGetStatistics(MediaHandler mh)
  4794. ;
  4795.     IF ¬ GENERATINGCFM THEN
  4796.         Macro
  4797.         _VideoMediaGetStatistics
  4798.             dc.w                $2F3C
  4799.             dc.w                $0000
  4800.             dc.w                $0106
  4801.             moveq               #0,d0
  4802.             dc.w                $A82A
  4803.         EndM
  4804.     ELSE
  4805.         IMPORT_CFM_FUNCTION VideoMediaGetStatistics
  4806.     ENDIF
  4807.  
  4808. ;
  4809. ;************************
  4810. ;* Text Media routines
  4811. ;*************************
  4812. ;
  4813. ;  Return displayFlags for TextProc 
  4814.  
  4815. txtProcDefaultDisplay            EQU        0                    ;    Use the media's default
  4816. txtProcDontDisplay                EQU        1                    ;    Don't display the text
  4817. txtProcDoDisplay                EQU        2                    ;    Do display the text
  4818. ;
  4819. ; pascal ComponentResult TextMediaSetTextProc(MediaHandler mh, TextMediaUPP TextProc, long refcon)
  4820. ;
  4821.     IF ¬ GENERATINGCFM THEN
  4822.         Macro
  4823.         _TextMediaSetTextProc
  4824.             dc.w                $2F3C
  4825.             dc.w                $0008
  4826.             dc.w                $0101
  4827.             moveq               #0,d0
  4828.             dc.w                $A82A
  4829.         EndM
  4830.     ELSE
  4831.         IMPORT_CFM_FUNCTION TextMediaSetTextProc
  4832.     ENDIF
  4833.  
  4834. ;
  4835. ; pascal ComponentResult TextMediaAddTextSample(MediaHandler mh, Ptr text, unsigned long size, short fontNumber, short fontSize, Style textFace, RGBColor *textColor, RGBColor *backColor, short textJustification, Rect *textBox, long displayFlags, TimeValue scrollDelay, short hiliteStart, short hiliteEnd, RGBColor *rgbHiliteColor, TimeValue duration, TimeValue *sampleTime)
  4836. ;
  4837.     IF ¬ GENERATINGCFM THEN
  4838.         Macro
  4839.         _TextMediaAddTextSample
  4840.             dc.w                $2F3C
  4841.             dc.w                $0034
  4842.             dc.w                $0102
  4843.             moveq               #0,d0
  4844.             dc.w                $A82A
  4845.         EndM
  4846.     ELSE
  4847.         IMPORT_CFM_FUNCTION TextMediaAddTextSample
  4848.     ENDIF
  4849.  
  4850. ;
  4851. ; pascal ComponentResult TextMediaAddTESample(MediaHandler mh, TEHandle hTE, RGBColor *backColor, short textJustification, Rect *textBox, long displayFlags, TimeValue scrollDelay, short hiliteStart, short hiliteEnd, RGBColor *rgbHiliteColor, TimeValue duration, TimeValue *sampleTime)
  4852. ;
  4853.     IF ¬ GENERATINGCFM THEN
  4854.         Macro
  4855.         _TextMediaAddTESample
  4856.             dc.w                $2F3C
  4857.             dc.w                $0026
  4858.             dc.w                $0103
  4859.             moveq               #0,d0
  4860.             dc.w                $A82A
  4861.         EndM
  4862.     ELSE
  4863.         IMPORT_CFM_FUNCTION TextMediaAddTESample
  4864.     ENDIF
  4865.  
  4866. ;
  4867. ; pascal ComponentResult TextMediaAddHiliteSample(MediaHandler mh, short hiliteStart, short hiliteEnd, RGBColor *rgbHiliteColor, TimeValue duration, TimeValue *sampleTime)
  4868. ;
  4869.     IF ¬ GENERATINGCFM THEN
  4870.         Macro
  4871.         _TextMediaAddHiliteSample
  4872.             dc.w                $2F3C
  4873.             dc.w                $0010
  4874.             dc.w                $0104
  4875.             moveq               #0,d0
  4876.             dc.w                $A82A
  4877.         EndM
  4878.     ELSE
  4879.         IMPORT_CFM_FUNCTION TextMediaAddHiliteSample
  4880.     ENDIF
  4881.  
  4882.  
  4883. findTextEdgeOK                    EQU        $01                    ; Okay to find text at specified sample time
  4884. findTextCaseSensitive            EQU        $02                    ; Case sensitive search
  4885. findTextReverseSearch            EQU        $04                    ; Search from sampleTime backwards
  4886. findTextWrapAround                EQU        $08                    ; Wrap search when beginning or end of movie is hit
  4887. findTextUseOffset                EQU        $10                    ; Begin search at the given character offset into sample rather than edge
  4888. ;
  4889. ; pascal ComponentResult TextMediaFindNextText(MediaHandler mh, Ptr text, long size, short findFlags, TimeValue startTime, TimeValue *foundTime, TimeValue *foundDuration, long *offset)
  4890. ;
  4891.     IF ¬ GENERATINGCFM THEN
  4892.         Macro
  4893.         _TextMediaFindNextText
  4894.             dc.w                $2F3C
  4895.             dc.w                $001A
  4896.             dc.w                $0105
  4897.             moveq               #0,d0
  4898.             dc.w                $A82A
  4899.         EndM
  4900.     ELSE
  4901.         IMPORT_CFM_FUNCTION TextMediaFindNextText
  4902.     ENDIF
  4903.  
  4904. ;
  4905. ; pascal ComponentResult TextMediaHiliteTextSample(MediaHandler mh, TimeValue sampleTime, short hiliteStart, short hiliteEnd, RGBColor *rgbHiliteColor)
  4906. ;
  4907.     IF ¬ GENERATINGCFM THEN
  4908.         Macro
  4909.         _TextMediaHiliteTextSample
  4910.             dc.w                $2F3C
  4911.             dc.w                $000C
  4912.             dc.w                $0106
  4913.             moveq               #0,d0
  4914.             dc.w                $A82A
  4915.         EndM
  4916.     ELSE
  4917.         IMPORT_CFM_FUNCTION TextMediaHiliteTextSample
  4918.     ENDIF
  4919.  
  4920.  
  4921. dropShadowOffsetType            EQU        'drpo'
  4922. dropShadowTranslucencyType        EQU        'drpt'
  4923. ;
  4924. ; pascal ComponentResult TextMediaSetTextSampleData(MediaHandler mh, void *data, OSType dataType)
  4925. ;
  4926.     IF ¬ GENERATINGCFM THEN
  4927.         Macro
  4928.         _TextMediaSetTextSampleData
  4929.             dc.w                $2F3C
  4930.             dc.w                $0008
  4931.             dc.w                $0107
  4932.             moveq               #0,d0
  4933.             dc.w                $A82A
  4934.         EndM
  4935.     ELSE
  4936.         IMPORT_CFM_FUNCTION TextMediaSetTextSampleData
  4937.     ENDIF
  4938.  
  4939. ;
  4940. ;************************
  4941. ;* Sprite Media routines
  4942. ;*************************
  4943. ;
  4944. ;  flags for HitTestSpriteMedia 
  4945.  
  4946. spriteHitTestBounds                EQU        $00000001            ;    point must only be within sprite's bounding box
  4947. spriteHitTestImage                EQU        $00000002            ;  point must be within the shape of the sprite's image
  4948. ;  atom types for sprite media 
  4949.  
  4950. kSpriteAtomType                    EQU        'sprt'
  4951. kSpriteImagesContainerAtomType    EQU        'imct'
  4952. kSpriteImageAtomType            EQU        'imag'
  4953. kSpriteImageDataAtomType        EQU        'imda'
  4954. kSpriteSharedDataAtomType        EQU        'dflt'
  4955. kSpriteNameAtomType                EQU        'name'
  4956. ;
  4957. ; pascal ComponentResult SpriteMediaSetProperty(MediaHandler mh, short spriteIndex, long propertyType, void *propertyValue)
  4958. ;
  4959.     IF ¬ GENERATINGCFM THEN
  4960.         Macro
  4961.         _SpriteMediaSetProperty
  4962.             dc.w                $2F3C
  4963.             dc.w                $000A
  4964.             dc.w                $0101
  4965.             moveq               #0,d0
  4966.             dc.w                $A82A
  4967.         EndM
  4968.     ELSE
  4969.         IMPORT_CFM_FUNCTION SpriteMediaSetProperty
  4970.     ENDIF
  4971.  
  4972. ;
  4973. ; pascal ComponentResult SpriteMediaGetProperty(MediaHandler mh, short spriteIndex, long propertyType, void *propertyValue)
  4974. ;
  4975.     IF ¬ GENERATINGCFM THEN
  4976.         Macro
  4977.         _SpriteMediaGetProperty
  4978.             dc.w                $2F3C
  4979.             dc.w                $000A
  4980.             dc.w                $0102
  4981.             moveq               #0,d0
  4982.             dc.w                $A82A
  4983.         EndM
  4984.     ELSE
  4985.         IMPORT_CFM_FUNCTION SpriteMediaGetProperty
  4986.     ENDIF
  4987.  
  4988. ;
  4989. ; pascal ComponentResult SpriteMediaHitTestSprites(MediaHandler mh, long flags, Point loc, short *spriteHitIndex)
  4990. ;
  4991.     IF ¬ GENERATINGCFM THEN
  4992.         Macro
  4993.         _SpriteMediaHitTestSprites
  4994.             dc.w                $2F3C
  4995.             dc.w                $000C
  4996.             dc.w                $0103
  4997.             moveq               #0,d0
  4998.             dc.w                $A82A
  4999.         EndM
  5000.     ELSE
  5001.         IMPORT_CFM_FUNCTION SpriteMediaHitTestSprites
  5002.     ENDIF
  5003.  
  5004. ;
  5005. ; pascal ComponentResult SpriteMediaCountSprites(MediaHandler mh, short *numSprites)
  5006. ;
  5007.     IF ¬ GENERATINGCFM THEN
  5008.         Macro
  5009.         _SpriteMediaCountSprites
  5010.             dc.w                $2F3C
  5011.             dc.w                $0004
  5012.             dc.w                $0104
  5013.             moveq               #0,d0
  5014.             dc.w                $A82A
  5015.         EndM
  5016.     ELSE
  5017.         IMPORT_CFM_FUNCTION SpriteMediaCountSprites
  5018.     ENDIF
  5019.  
  5020. ;
  5021. ; pascal ComponentResult SpriteMediaCountImages(MediaHandler mh, short *numImages)
  5022. ;
  5023.     IF ¬ GENERATINGCFM THEN
  5024.         Macro
  5025.         _SpriteMediaCountImages
  5026.             dc.w                $2F3C
  5027.             dc.w                $0004
  5028.             dc.w                $0105
  5029.             moveq               #0,d0
  5030.             dc.w                $A82A
  5031.         EndM
  5032.     ELSE
  5033.         IMPORT_CFM_FUNCTION SpriteMediaCountImages
  5034.     ENDIF
  5035.  
  5036. ;
  5037. ; pascal ComponentResult SpriteMediaGetIndImageDescription(MediaHandler mh, short imageIndex, ImageDescriptionHandle imageDescription)
  5038. ;
  5039.     IF ¬ GENERATINGCFM THEN
  5040.         Macro
  5041.         _SpriteMediaGetIndImageDescription
  5042.             dc.w                $2F3C
  5043.             dc.w                $0006
  5044.             dc.w                $0106
  5045.             moveq               #0,d0
  5046.             dc.w                $A82A
  5047.         EndM
  5048.     ELSE
  5049.         IMPORT_CFM_FUNCTION SpriteMediaGetIndImageDescription
  5050.     ENDIF
  5051.  
  5052. ;
  5053. ; pascal ComponentResult SpriteMediaGetDisplayedSampleNumber(MediaHandler mh, long *sampleNum)
  5054. ;
  5055.     IF ¬ GENERATINGCFM THEN
  5056.         Macro
  5057.         _SpriteMediaGetDisplayedSampleNumber
  5058.             dc.w                $2F3C
  5059.             dc.w                $0004
  5060.             dc.w                $0107
  5061.             moveq               #0,d0
  5062.             dc.w                $A82A
  5063.         EndM
  5064.     ELSE
  5065.         IMPORT_CFM_FUNCTION SpriteMediaGetDisplayedSampleNumber
  5066.     ENDIF
  5067.  
  5068. ;
  5069. ;************************
  5070. ;* 3D Media routines
  5071. ;*************************
  5072. ;
  5073. ;
  5074. ; pascal ComponentResult Media3DGetNamedObjectList(MediaHandler mh, QTAtomContainer *objectList)
  5075. ;
  5076.     IF ¬ GENERATINGCFM THEN
  5077.         Macro
  5078.         _Media3DGetNamedObjectList
  5079.             dc.w                $2F3C
  5080.             dc.w                $0004
  5081.             dc.w                $0101
  5082.             moveq               #0,d0
  5083.             dc.w                $A82A
  5084.         EndM
  5085.     ELSE
  5086.         IMPORT_CFM_FUNCTION Media3DGetNamedObjectList
  5087.     ENDIF
  5088.  
  5089. ;
  5090. ; pascal ComponentResult Media3DGetRendererList(MediaHandler mh, QTAtomContainer *rendererList)
  5091. ;
  5092.     IF ¬ GENERATINGCFM THEN
  5093.         Macro
  5094.         _Media3DGetRendererList
  5095.             dc.w                $2F3C
  5096.             dc.w                $0004
  5097.             dc.w                $0102
  5098.             moveq               #0,d0
  5099.             dc.w                $A82A
  5100.         EndM
  5101.     ELSE
  5102.         IMPORT_CFM_FUNCTION Media3DGetRendererList
  5103.     ENDIF
  5104.  
  5105. ;
  5106. ;***************************************
  5107. ;*                                        *
  5108. ;*      M O V I E   C O N T R O L L E R        *
  5109. ;*                                        *
  5110. ;***************************************
  5111. ;
  5112.  
  5113. MovieControllerComponentType    EQU        'play'
  5114. ; typedef ComponentInstance             MovieController
  5115.  
  5116.  
  5117. mcActionIdle                    EQU        1                    ; no param
  5118. mcActionDraw                    EQU        2                    ; param is WindowPtr
  5119. mcActionActivate                EQU        3                    ; no param
  5120. mcActionDeactivate                EQU        4                    ; no param
  5121. mcActionMouseDown                EQU        5                    ; param is pointer to EventRecord
  5122. mcActionKey                        EQU        6                    ; param is pointer to EventRecord
  5123. mcActionPlay                    EQU        8                    ; param is Fixed, play rate
  5124. mcActionGoToTime                EQU        12                    ; param is TimeRecord
  5125. mcActionSetVolume                EQU        14                    ; param is a short
  5126. mcActionGetVolume                EQU        15                    ; param is pointer to a short
  5127. mcActionStep                    EQU        18                    ; param is number of steps (short)
  5128. mcActionSetLooping                EQU        21                    ; param is Boolean
  5129. mcActionGetLooping                EQU        22                    ; param is pointer to a Boolean
  5130. mcActionSetLoopIsPalindrome        EQU        23                    ; param is Boolean
  5131. mcActionGetLoopIsPalindrome        EQU        24                    ; param is pointer to a Boolean
  5132. mcActionSetGrowBoxBounds        EQU        25                    ; param is a Rect
  5133. mcActionControllerSizeChanged    EQU        26                    ; no param
  5134. mcActionSetSelectionBegin        EQU        29                    ; param is TimeRecord
  5135. mcActionSetSelectionDuration    EQU        30                    ; param is TimeRecord, action only taken on set-duration
  5136. mcActionSetKeysEnabled            EQU        32                    ; param is Boolean
  5137. mcActionGetKeysEnabled            EQU        33                    ; param is pointer to Boolean
  5138. mcActionSetPlaySelection        EQU        34                    ; param is Boolean
  5139. mcActionGetPlaySelection        EQU        35                    ; param is pointer to Boolean
  5140. mcActionSetUseBadge                EQU        36                    ; param is Boolean
  5141. mcActionGetUseBadge                EQU        37                    ; param is pointer to Boolean
  5142. mcActionSetFlags                EQU        38                    ; param is long of flags
  5143. mcActionGetFlags                EQU        39                    ; param is pointer to a long of flags
  5144. mcActionSetPlayEveryFrame        EQU        40                    ; param is Boolean
  5145. mcActionGetPlayEveryFrame        EQU        41                    ; param is pointer to Boolean
  5146. mcActionGetPlayRate                EQU        42                    ; param is pointer to Fixed
  5147. mcActionShowBalloon                EQU        43                    ; param is a pointer to a boolean. set to false to stop balloon
  5148. mcActionBadgeClick                EQU        44                    ; param is pointer to Boolean. set to false to ignore click
  5149. mcActionMovieClick                EQU        45                    ; param is pointer to event record. change “what” to nullEvt to kill click
  5150. mcActionSuspend                    EQU        46                    ; no param
  5151. mcActionResume                    EQU        47                    ; no param
  5152. mcActionSetControllerKeysEnabled EQU    48                    ; param is Boolean
  5153. mcActionGetTimeSliderRect        EQU        49                    ; param is pointer to rect
  5154. mcActionMovieEdited                EQU        50                    ; no param
  5155. mcActionGetDragEnabled            EQU        51                    ; param is pointer to Boolean
  5156. mcActionSetDragEnabled            EQU        52                    ; param is Boolean
  5157. mcActionGetSelectionBegin        EQU        53                    ; param is TimeRecord
  5158. mcActionGetSelectionDuration    EQU        54                    ; param is TimeRecord
  5159. mcActionPrerollAndPlay            EQU        55                    ; param is Fixed, play rate
  5160. mcActionGetCursorSettingEnabled    EQU        56                    ; param is pointer to Boolean
  5161. mcActionSetCursorSettingEnabled    EQU        57                    ; param is Boolean
  5162. mcActionSetColorTable            EQU        58                    ; param is CTabHandle
  5163. ; typedef short                         mcAction
  5164.  
  5165.  
  5166. mcFlagSuppressMovieFrame        EQU        $01
  5167. mcFlagSuppressStepButtons        EQU        $02
  5168. mcFlagSuppressSpeakerButton        EQU        $04
  5169. mcFlagsUseWindowPalette            EQU        $08
  5170. mcFlagsDontInvalidate            EQU        $10
  5171.  
  5172. mcPositionDontInvalidate        EQU        $20
  5173. ; typedef unsigned long                 mcFlags
  5174.  
  5175. ;
  5176. ;    menu related stuff
  5177. ;
  5178.  
  5179. mcInfoUndoAvailable                EQU        $01
  5180. mcInfoCutAvailable                EQU        $02
  5181. mcInfoCopyAvailable                EQU        $04
  5182. mcInfoPasteAvailable            EQU        $08
  5183. mcInfoClearAvailable            EQU        $10
  5184. mcInfoHasSound                    EQU        $20
  5185. mcInfoIsPlaying                    EQU        $40
  5186. mcInfoIsLooping                    EQU        $80
  5187. mcInfoIsInPalindrome            EQU        $0100
  5188. mcInfoEditingEnabled            EQU        $0200
  5189. mcInfoMovieIsInteractive        EQU        $0400
  5190. ;  menu item codes
  5191.  
  5192. mcMenuUndo                        EQU        1
  5193. mcMenuCut                        EQU        3
  5194. mcMenuCopy                        EQU        4
  5195. mcMenuPaste                        EQU        5
  5196. mcMenuClear                        EQU        6
  5197. ;  target management 
  5198. ;
  5199. ; pascal ComponentResult MCSetMovie(MovieController mc, Movie theMovie, WindowPtr movieWindow, Point where)
  5200. ;
  5201.     IF ¬ GENERATINGCFM THEN
  5202.         Macro
  5203.         _MCSetMovie
  5204.             dc.w                $2F3C
  5205.             dc.w                $000C
  5206.             dc.w                $0002
  5207.             moveq               #0,d0
  5208.             dc.w                $A82A
  5209.         EndM
  5210.     ELSE
  5211.         IMPORT_CFM_FUNCTION MCSetMovie
  5212.     ENDIF
  5213.  
  5214. ;
  5215. ; pascal Movie MCGetIndMovie(MovieController mc, short index)
  5216. ;
  5217.     IF ¬ GENERATINGCFM THEN
  5218.         Macro
  5219.         _MCGetIndMovie
  5220.             dc.w                $2F3C
  5221.             dc.w                $0002
  5222.             dc.w                $0005
  5223.             moveq               #0,d0
  5224.             dc.w                $A82A
  5225.         EndM
  5226.     ELSE
  5227.         IMPORT_CFM_FUNCTION MCGetIndMovie
  5228.     ENDIF
  5229.  
  5230. ;
  5231. ; pascal ComponentResult MCRemoveAllMovies(MovieController mc)
  5232. ;
  5233.     IF ¬ GENERATINGCFM THEN
  5234.         Macro
  5235.         _MCRemoveAllMovies
  5236.             dc.w                $2F3C
  5237.             dc.w                $0000
  5238.             dc.w                $0006
  5239.             moveq               #0,d0
  5240.             dc.w                $A82A
  5241.         EndM
  5242.     ELSE
  5243.         IMPORT_CFM_FUNCTION MCRemoveAllMovies
  5244.     ENDIF
  5245.  
  5246. ;
  5247. ; pascal ComponentResult MCRemoveAMovie(MovieController mc, Movie m)
  5248. ;
  5249.     IF ¬ GENERATINGCFM THEN
  5250.         Macro
  5251.         _MCRemoveAMovie
  5252.             dc.w                $2F3C
  5253.             dc.w                $0004
  5254.             dc.w                $0003
  5255.             moveq               #0,d0
  5256.             dc.w                $A82A
  5257.         EndM
  5258.     ELSE
  5259.         IMPORT_CFM_FUNCTION MCRemoveAMovie
  5260.     ENDIF
  5261.  
  5262. ;
  5263. ; pascal ComponentResult MCRemoveMovie(MovieController mc)
  5264. ;
  5265.     IF ¬ GENERATINGCFM THEN
  5266.         Macro
  5267.         _MCRemoveMovie
  5268.             dc.w                $2F3C
  5269.             dc.w                $0000
  5270.             dc.w                $0006
  5271.             moveq               #0,d0
  5272.             dc.w                $A82A
  5273.         EndM
  5274.     ELSE
  5275.         IMPORT_CFM_FUNCTION MCRemoveMovie
  5276.     ENDIF
  5277.  
  5278. ;  event handling etc. 
  5279. ;
  5280. ; pascal ComponentResult MCIsPlayerEvent(MovieController mc, const EventRecord *e)
  5281. ;
  5282.     IF ¬ GENERATINGCFM THEN
  5283.         Macro
  5284.         _MCIsPlayerEvent
  5285.             dc.w                $2F3C
  5286.             dc.w                $0004
  5287.             dc.w                $0007
  5288.             moveq               #0,d0
  5289.             dc.w                $A82A
  5290.         EndM
  5291.     ELSE
  5292.         IMPORT_CFM_FUNCTION MCIsPlayerEvent
  5293.     ENDIF
  5294.  
  5295. ;  obsolete. use MCSetActionFilterWithRefCon instead. 
  5296. ;
  5297. ; pascal ComponentResult MCSetActionFilter(MovieController mc, MCActionFilterUPP blob)
  5298. ;
  5299.     IF ¬ GENERATINGCFM THEN
  5300.         Macro
  5301.         _MCSetActionFilter
  5302.             dc.w                $2F3C
  5303.             dc.w                $0004
  5304.             dc.w                $0008
  5305.             moveq               #0,d0
  5306.             dc.w                $A82A
  5307.         EndM
  5308.     ELSE
  5309.         IMPORT_CFM_FUNCTION MCSetActionFilter
  5310.     ENDIF
  5311.  
  5312. ;
  5313. ;    proc is of the form:
  5314. ;        Boolean userPlayerFilter(MovieController mc, short *action, void *params) =
  5315. ;    proc returns TRUE if it handles the action, FALSE if not
  5316. ;    action is passed as a VAR so that it could be changed by filter
  5317. ;    this is consistent with the current dialog manager stuff
  5318. ;    params is any potential parameters that go with the action
  5319. ;        such as set playback rate to xxx.
  5320. ;
  5321. ;
  5322. ; pascal ComponentResult MCDoAction(MovieController mc, short action, void *params)
  5323. ;
  5324.     IF ¬ GENERATINGCFM THEN
  5325.         Macro
  5326.         _MCDoAction
  5327.             dc.w                $2F3C
  5328.             dc.w                $0006
  5329.             dc.w                $0009
  5330.             moveq               #0,d0
  5331.             dc.w                $A82A
  5332.         EndM
  5333.     ELSE
  5334.         IMPORT_CFM_FUNCTION MCDoAction
  5335.     ENDIF
  5336.  
  5337. ;  state type things 
  5338. ;
  5339. ; pascal ComponentResult MCSetControllerAttached(MovieController mc, Boolean attach)
  5340. ;
  5341.     IF ¬ GENERATINGCFM THEN
  5342.         Macro
  5343.         _MCSetControllerAttached
  5344.             dc.w                $2F3C
  5345.             dc.w                $0002
  5346.             dc.w                $000A
  5347.             moveq               #0,d0
  5348.             dc.w                $A82A
  5349.         EndM
  5350.     ELSE
  5351.         IMPORT_CFM_FUNCTION MCSetControllerAttached
  5352.     ENDIF
  5353.  
  5354. ;
  5355. ; pascal ComponentResult MCIsControllerAttached(MovieController mc)
  5356. ;
  5357.     IF ¬ GENERATINGCFM THEN
  5358.         Macro
  5359.         _MCIsControllerAttached
  5360.             dc.w                $2F3C
  5361.             dc.w                $0000
  5362.             dc.w                $000B
  5363.             moveq               #0,d0
  5364.             dc.w                $A82A
  5365.         EndM
  5366.     ELSE
  5367.         IMPORT_CFM_FUNCTION MCIsControllerAttached
  5368.     ENDIF
  5369.  
  5370. ;
  5371. ; pascal ComponentResult MCSetControllerPort(MovieController mc, CGrafPtr gp)
  5372. ;
  5373.     IF ¬ GENERATINGCFM THEN
  5374.         Macro
  5375.         _MCSetControllerPort
  5376.             dc.w                $2F3C
  5377.             dc.w                $0004
  5378.             dc.w                $000C
  5379.             moveq               #0,d0
  5380.             dc.w                $A82A
  5381.         EndM
  5382.     ELSE
  5383.         IMPORT_CFM_FUNCTION MCSetControllerPort
  5384.     ENDIF
  5385.  
  5386. ;
  5387. ; pascal CGrafPtr MCGetControllerPort(MovieController mc)
  5388. ;
  5389.     IF ¬ GENERATINGCFM THEN
  5390.         Macro
  5391.         _MCGetControllerPort
  5392.             dc.w                $2F3C
  5393.             dc.w                $0000
  5394.             dc.w                $000D
  5395.             moveq               #0,d0
  5396.             dc.w                $A82A
  5397.         EndM
  5398.     ELSE
  5399.         IMPORT_CFM_FUNCTION MCGetControllerPort
  5400.     ENDIF
  5401.  
  5402. ;
  5403. ; pascal ComponentResult MCSetVisible(MovieController mc, Boolean visible)
  5404. ;
  5405.     IF ¬ GENERATINGCFM THEN
  5406.         Macro
  5407.         _MCSetVisible
  5408.             dc.w                $2F3C
  5409.             dc.w                $0002
  5410.             dc.w                $000E
  5411.             moveq               #0,d0
  5412.             dc.w                $A82A
  5413.         EndM
  5414.     ELSE
  5415.         IMPORT_CFM_FUNCTION MCSetVisible
  5416.     ENDIF
  5417.  
  5418. ;
  5419. ; pascal ComponentResult MCGetVisible(MovieController mc)
  5420. ;
  5421.     IF ¬ GENERATINGCFM THEN
  5422.         Macro
  5423.         _MCGetVisible
  5424.             dc.w                $2F3C
  5425.             dc.w                $0000
  5426.             dc.w                $000F
  5427.             moveq               #0,d0
  5428.             dc.w                $A82A
  5429.         EndM
  5430.     ELSE
  5431.         IMPORT_CFM_FUNCTION MCGetVisible
  5432.     ENDIF
  5433.  
  5434. ;
  5435. ; pascal ComponentResult MCGetControllerBoundsRect(MovieController mc, Rect *bounds)
  5436. ;
  5437.     IF ¬ GENERATINGCFM THEN
  5438.         Macro
  5439.         _MCGetControllerBoundsRect
  5440.             dc.w                $2F3C
  5441.             dc.w                $0004
  5442.             dc.w                $0010
  5443.             moveq               #0,d0
  5444.             dc.w                $A82A
  5445.         EndM
  5446.     ELSE
  5447.         IMPORT_CFM_FUNCTION MCGetControllerBoundsRect
  5448.     ENDIF
  5449.  
  5450. ;
  5451. ; pascal ComponentResult MCSetControllerBoundsRect(MovieController mc, const Rect *bounds)
  5452. ;
  5453.     IF ¬ GENERATINGCFM THEN
  5454.         Macro
  5455.         _MCSetControllerBoundsRect
  5456.             dc.w                $2F3C
  5457.             dc.w                $0004
  5458.             dc.w                $0011
  5459.             moveq               #0,d0
  5460.             dc.w                $A82A
  5461.         EndM
  5462.     ELSE
  5463.         IMPORT_CFM_FUNCTION MCSetControllerBoundsRect
  5464.     ENDIF
  5465.  
  5466. ;
  5467. ; pascal RgnHandle MCGetControllerBoundsRgn(MovieController mc)
  5468. ;
  5469.     IF ¬ GENERATINGCFM THEN
  5470.         Macro
  5471.         _MCGetControllerBoundsRgn
  5472.             dc.w                $2F3C
  5473.             dc.w                $0000
  5474.             dc.w                $0012
  5475.             moveq               #0,d0
  5476.             dc.w                $A82A
  5477.         EndM
  5478.     ELSE
  5479.         IMPORT_CFM_FUNCTION MCGetControllerBoundsRgn
  5480.     ENDIF
  5481.  
  5482. ;
  5483. ; pascal RgnHandle MCGetWindowRgn(MovieController mc, WindowPtr w)
  5484. ;
  5485.     IF ¬ GENERATINGCFM THEN
  5486.         Macro
  5487.         _MCGetWindowRgn
  5488.             dc.w                $2F3C
  5489.             dc.w                $0004
  5490.             dc.w                $0013
  5491.             moveq               #0,d0
  5492.             dc.w                $A82A
  5493.         EndM
  5494.     ELSE
  5495.         IMPORT_CFM_FUNCTION MCGetWindowRgn
  5496.     ENDIF
  5497.  
  5498. ;  other stuff 
  5499. ;
  5500. ; pascal ComponentResult MCMovieChanged(MovieController mc, Movie m)
  5501. ;
  5502.     IF ¬ GENERATINGCFM THEN
  5503.         Macro
  5504.         _MCMovieChanged
  5505.             dc.w                $2F3C
  5506.             dc.w                $0004
  5507.             dc.w                $0014
  5508.             moveq               #0,d0
  5509.             dc.w                $A82A
  5510.         EndM
  5511.     ELSE
  5512.         IMPORT_CFM_FUNCTION MCMovieChanged
  5513.     ENDIF
  5514.  
  5515. ;
  5516. ;    called when the app has changed thing about the movie (like bounding rect) or rate. So that we
  5517. ;        can update our graphical (and internal) state accordingly.
  5518. ;
  5519. ;
  5520. ; pascal ComponentResult MCSetDuration(MovieController mc, TimeValue duration)
  5521. ;
  5522.     IF ¬ GENERATINGCFM THEN
  5523.         Macro
  5524.         _MCSetDuration
  5525.             dc.w                $2F3C
  5526.             dc.w                $0004
  5527.             dc.w                $0015
  5528.             moveq               #0,d0
  5529.             dc.w                $A82A
  5530.         EndM
  5531.     ELSE
  5532.         IMPORT_CFM_FUNCTION MCSetDuration
  5533.     ENDIF
  5534.  
  5535. ;
  5536. ;    duration to use for time slider -- will be reset next time MCMovieChanged is called
  5537. ;        or MCSetMovie is called
  5538. ;
  5539. ;
  5540. ; pascal TimeValue MCGetCurrentTime(MovieController mc, TimeScale *scale)
  5541. ;
  5542.     IF ¬ GENERATINGCFM THEN
  5543.         Macro
  5544.         _MCGetCurrentTime
  5545.             dc.w                $2F3C
  5546.             dc.w                $0004
  5547.             dc.w                $0016
  5548.             moveq               #0,d0
  5549.             dc.w                $A82A
  5550.         EndM
  5551.     ELSE
  5552.         IMPORT_CFM_FUNCTION MCGetCurrentTime
  5553.     ENDIF
  5554.  
  5555. ;
  5556. ;    returns the time value and the time scale it is on. if there are no movies, the
  5557. ;        time scale is passed back as 0. scale is an optional parameter
  5558. ;
  5559. ;
  5560. ;
  5561. ; pascal ComponentResult MCNewAttachedController(MovieController mc, Movie theMovie, WindowPtr w, Point where)
  5562. ;
  5563.     IF ¬ GENERATINGCFM THEN
  5564.         Macro
  5565.         _MCNewAttachedController
  5566.             dc.w                $2F3C
  5567.             dc.w                $000C
  5568.             dc.w                $0017
  5569.             moveq               #0,d0
  5570.             dc.w                $A82A
  5571.         EndM
  5572.     ELSE
  5573.         IMPORT_CFM_FUNCTION MCNewAttachedController
  5574.     ENDIF
  5575.  
  5576. ;
  5577. ;    makes theMovie the only movie attached to the controller. makes the controller visible.
  5578. ;    the window and where parameters are passed a long to MCSetMovie and behave as
  5579. ;    described there
  5580. ;
  5581. ;
  5582. ; pascal ComponentResult MCDraw(MovieController mc, WindowPtr w)
  5583. ;
  5584.     IF ¬ GENERATINGCFM THEN
  5585.         Macro
  5586.         _MCDraw
  5587.             dc.w                $2F3C
  5588.             dc.w                $0004
  5589.             dc.w                $0018
  5590.             moveq               #0,d0
  5591.             dc.w                $A82A
  5592.         EndM
  5593.     ELSE
  5594.         IMPORT_CFM_FUNCTION MCDraw
  5595.     ENDIF
  5596.  
  5597. ;
  5598. ; pascal ComponentResult MCActivate(MovieController mc, WindowPtr w, Boolean activate)
  5599. ;
  5600.     IF ¬ GENERATINGCFM THEN
  5601.         Macro
  5602.         _MCActivate
  5603.             dc.w                $2F3C
  5604.             dc.w                $0006
  5605.             dc.w                $0019
  5606.             moveq               #0,d0
  5607.             dc.w                $A82A
  5608.         EndM
  5609.     ELSE
  5610.         IMPORT_CFM_FUNCTION MCActivate
  5611.     ENDIF
  5612.  
  5613. ;
  5614. ; pascal ComponentResult MCIdle(MovieController mc)
  5615. ;
  5616.     IF ¬ GENERATINGCFM THEN
  5617.         Macro
  5618.         _MCIdle
  5619.             dc.w                $2F3C
  5620.             dc.w                $0000
  5621.             dc.w                $001A
  5622.             moveq               #0,d0
  5623.             dc.w                $A82A
  5624.         EndM
  5625.     ELSE
  5626.         IMPORT_CFM_FUNCTION MCIdle
  5627.     ENDIF
  5628.  
  5629. ;
  5630. ; pascal ComponentResult MCKey(MovieController mc, SInt8 key, long modifiers)
  5631. ;
  5632.     IF ¬ GENERATINGCFM THEN
  5633.         Macro
  5634.         _MCKey
  5635.             dc.w                $2F3C
  5636.             dc.w                $0006
  5637.             dc.w                $001B
  5638.             moveq               #0,d0
  5639.             dc.w                $A82A
  5640.         EndM
  5641.     ELSE
  5642.         IMPORT_CFM_FUNCTION MCKey
  5643.     ENDIF
  5644.  
  5645. ;
  5646. ; pascal ComponentResult MCClick(MovieController mc, WindowPtr w, Point where, long when, long modifiers)
  5647. ;
  5648.     IF ¬ GENERATINGCFM THEN
  5649.         Macro
  5650.         _MCClick
  5651.             dc.w                $2F3C
  5652.             dc.w                $0010
  5653.             dc.w                $001C
  5654.             moveq               #0,d0
  5655.             dc.w                $A82A
  5656.         EndM
  5657.     ELSE
  5658.         IMPORT_CFM_FUNCTION MCClick
  5659.     ENDIF
  5660.  
  5661. ;
  5662. ;    calls for editing
  5663. ;
  5664. ;
  5665. ; pascal ComponentResult MCEnableEditing(MovieController mc, Boolean enabled)
  5666. ;
  5667.     IF ¬ GENERATINGCFM THEN
  5668.         Macro
  5669.         _MCEnableEditing
  5670.             dc.w                $2F3C
  5671.             dc.w                $0002
  5672.             dc.w                $001D
  5673.             moveq               #0,d0
  5674.             dc.w                $A82A
  5675.         EndM
  5676.     ELSE
  5677.         IMPORT_CFM_FUNCTION MCEnableEditing
  5678.     ENDIF
  5679.  
  5680. ;
  5681. ; pascal long MCIsEditingEnabled(MovieController mc)
  5682. ;
  5683.     IF ¬ GENERATINGCFM THEN
  5684.         Macro
  5685.         _MCIsEditingEnabled
  5686.             dc.w                $2F3C
  5687.             dc.w                $0000
  5688.             dc.w                $001E
  5689.             moveq               #0,d0
  5690.             dc.w                $A82A
  5691.         EndM
  5692.     ELSE
  5693.         IMPORT_CFM_FUNCTION MCIsEditingEnabled
  5694.     ENDIF
  5695.  
  5696. ;
  5697. ; pascal Movie MCCopy(MovieController mc)
  5698. ;
  5699.     IF ¬ GENERATINGCFM THEN
  5700.         Macro
  5701.         _MCCopy
  5702.             dc.w                $2F3C
  5703.             dc.w                $0000
  5704.             dc.w                $001F
  5705.             moveq               #0,d0
  5706.             dc.w                $A82A
  5707.         EndM
  5708.     ELSE
  5709.         IMPORT_CFM_FUNCTION MCCopy
  5710.     ENDIF
  5711.  
  5712. ;
  5713. ; pascal Movie MCCut(MovieController mc)
  5714. ;
  5715.     IF ¬ GENERATINGCFM THEN
  5716.         Macro
  5717.         _MCCut
  5718.             dc.w                $2F3C
  5719.             dc.w                $0000
  5720.             dc.w                $0020
  5721.             moveq               #0,d0
  5722.             dc.w                $A82A
  5723.         EndM
  5724.     ELSE
  5725.         IMPORT_CFM_FUNCTION MCCut
  5726.     ENDIF
  5727.  
  5728. ;
  5729. ; pascal ComponentResult MCPaste(MovieController mc, Movie srcMovie)
  5730. ;
  5731.     IF ¬ GENERATINGCFM THEN
  5732.         Macro
  5733.         _MCPaste
  5734.             dc.w                $2F3C
  5735.             dc.w                $0004
  5736.             dc.w                $0021
  5737.             moveq               #0,d0
  5738.             dc.w                $A82A
  5739.         EndM
  5740.     ELSE
  5741.         IMPORT_CFM_FUNCTION MCPaste
  5742.     ENDIF
  5743.  
  5744. ;
  5745. ; pascal ComponentResult MCClear(MovieController mc)
  5746. ;
  5747.     IF ¬ GENERATINGCFM THEN
  5748.         Macro
  5749.         _MCClear
  5750.             dc.w                $2F3C
  5751.             dc.w                $0000
  5752.             dc.w                $0022
  5753.             moveq               #0,d0
  5754.             dc.w                $A82A
  5755.         EndM
  5756.     ELSE
  5757.         IMPORT_CFM_FUNCTION MCClear
  5758.     ENDIF
  5759.  
  5760. ;
  5761. ; pascal ComponentResult MCUndo(MovieController mc)
  5762. ;
  5763.     IF ¬ GENERATINGCFM THEN
  5764.         Macro
  5765.         _MCUndo
  5766.             dc.w                $2F3C
  5767.             dc.w                $0000
  5768.             dc.w                $0023
  5769.             moveq               #0,d0
  5770.             dc.w                $A82A
  5771.         EndM
  5772.     ELSE
  5773.         IMPORT_CFM_FUNCTION MCUndo
  5774.     ENDIF
  5775.  
  5776. ;
  5777. ; *    somewhat special stuff
  5778. ;
  5779. ;
  5780. ; pascal ComponentResult MCPositionController(MovieController mc, const Rect *movieRect, const Rect *controllerRect, long someFlags)
  5781. ;
  5782.     IF ¬ GENERATINGCFM THEN
  5783.         Macro
  5784.         _MCPositionController
  5785.             dc.w                $2F3C
  5786.             dc.w                $000C
  5787.             dc.w                $0024
  5788.             moveq               #0,d0
  5789.             dc.w                $A82A
  5790.         EndM
  5791.     ELSE
  5792.         IMPORT_CFM_FUNCTION MCPositionController
  5793.     ENDIF
  5794.  
  5795. ;
  5796. ; pascal ComponentResult MCGetControllerInfo(MovieController mc, long *someFlags)
  5797. ;
  5798.     IF ¬ GENERATINGCFM THEN
  5799.         Macro
  5800.         _MCGetControllerInfo
  5801.             dc.w                $2F3C
  5802.             dc.w                $0004
  5803.             dc.w                $0025
  5804.             moveq               #0,d0
  5805.             dc.w                $A82A
  5806.         EndM
  5807.     ELSE
  5808.         IMPORT_CFM_FUNCTION MCGetControllerInfo
  5809.     ENDIF
  5810.  
  5811. ;
  5812. ; pascal ComponentResult MCSetClip(MovieController mc, RgnHandle theClip, RgnHandle movieClip)
  5813. ;
  5814.     IF ¬ GENERATINGCFM THEN
  5815.         Macro
  5816.         _MCSetClip
  5817.             dc.w                $2F3C
  5818.             dc.w                $0008
  5819.             dc.w                $0028
  5820.             moveq               #0,d0
  5821.             dc.w                $A82A
  5822.         EndM
  5823.     ELSE
  5824.         IMPORT_CFM_FUNCTION MCSetClip
  5825.     ENDIF
  5826.  
  5827. ;
  5828. ; pascal ComponentResult MCGetClip(MovieController mc, RgnHandle *theClip, RgnHandle *movieClip)
  5829. ;
  5830.     IF ¬ GENERATINGCFM THEN
  5831.         Macro
  5832.         _MCGetClip
  5833.             dc.w                $2F3C
  5834.             dc.w                $0008
  5835.             dc.w                $0029
  5836.             moveq               #0,d0
  5837.             dc.w                $A82A
  5838.         EndM
  5839.     ELSE
  5840.         IMPORT_CFM_FUNCTION MCGetClip
  5841.     ENDIF
  5842.  
  5843. ;
  5844. ; pascal ComponentResult MCDrawBadge(MovieController mc, RgnHandle movieRgn, RgnHandle *badgeRgn)
  5845. ;
  5846.     IF ¬ GENERATINGCFM THEN
  5847.         Macro
  5848.         _MCDrawBadge
  5849.             dc.w                $2F3C
  5850.             dc.w                $0008
  5851.             dc.w                $002A
  5852.             moveq               #0,d0
  5853.             dc.w                $A82A
  5854.         EndM
  5855.     ELSE
  5856.         IMPORT_CFM_FUNCTION MCDrawBadge
  5857.     ENDIF
  5858.  
  5859. ;
  5860. ; pascal ComponentResult MCSetUpEditMenu(MovieController mc, long modifiers, MenuHandle mh)
  5861. ;
  5862.     IF ¬ GENERATINGCFM THEN
  5863.         Macro
  5864.         _MCSetUpEditMenu
  5865.             dc.w                $2F3C
  5866.             dc.w                $0008
  5867.             dc.w                $002B
  5868.             moveq               #0,d0
  5869.             dc.w                $A82A
  5870.         EndM
  5871.     ELSE
  5872.         IMPORT_CFM_FUNCTION MCSetUpEditMenu
  5873.     ENDIF
  5874.  
  5875. ;
  5876. ; pascal ComponentResult MCGetMenuString(MovieController mc, long modifiers, short item, Str255 aString)
  5877. ;
  5878.     IF ¬ GENERATINGCFM THEN
  5879.         Macro
  5880.         _MCGetMenuString
  5881.             dc.w                $2F3C
  5882.             dc.w                $000A
  5883.             dc.w                $002C
  5884.             moveq               #0,d0
  5885.             dc.w                $A82A
  5886.         EndM
  5887.     ELSE
  5888.         IMPORT_CFM_FUNCTION MCGetMenuString
  5889.     ENDIF
  5890.  
  5891. ;
  5892. ; pascal ComponentResult MCSetActionFilterWithRefCon(MovieController mc, MCActionFilterWithRefConUPP blob, long refCon)
  5893. ;
  5894.     IF ¬ GENERATINGCFM THEN
  5895.         Macro
  5896.         _MCSetActionFilterWithRefCon
  5897.             dc.w                $2F3C
  5898.             dc.w                $0008
  5899.             dc.w                $002D
  5900.             moveq               #0,d0
  5901.             dc.w                $A82A
  5902.         EndM
  5903.     ELSE
  5904.         IMPORT_CFM_FUNCTION MCSetActionFilterWithRefCon
  5905.     ENDIF
  5906.  
  5907. ;
  5908. ; pascal ComponentResult MCPtInController(MovieController mc, Point thePt, Boolean *inController)
  5909. ;
  5910.     IF ¬ GENERATINGCFM THEN
  5911.         Macro
  5912.         _MCPtInController
  5913.             dc.w                $2F3C
  5914.             dc.w                $0008
  5915.             dc.w                $002E
  5916.             moveq               #0,d0
  5917.             dc.w                $A82A
  5918.         EndM
  5919.     ELSE
  5920.         IMPORT_CFM_FUNCTION MCPtInController
  5921.     ENDIF
  5922.  
  5923. ;
  5924. ; pascal ComponentResult MCInvalidate(MovieController mc, WindowPtr w, RgnHandle invalidRgn)
  5925. ;
  5926.     IF ¬ GENERATINGCFM THEN
  5927.         Macro
  5928.         _MCInvalidate
  5929.             dc.w                $2F3C
  5930.             dc.w                $0008
  5931.             dc.w                $002F
  5932.             moveq               #0,d0
  5933.             dc.w                $A82A
  5934.         EndM
  5935.     ELSE
  5936.         IMPORT_CFM_FUNCTION MCInvalidate
  5937.     ENDIF
  5938.  
  5939. ;
  5940. ;***************************************
  5941. ;*                                        *
  5942. ;*          T  I  M  E  B  A  S  E            *
  5943. ;*                                        *
  5944. ;***************************************
  5945. ;
  5946. ;
  5947. ; pascal TimeBase NewTimeBase(void )
  5948. ;
  5949.     IF ¬ GENERATINGCFM THEN
  5950.         Macro
  5951.         _NewTimeBase
  5952.             move.w              #$00A5,d0
  5953.             dc.w                $AAAA
  5954.         EndM
  5955.     ELSE
  5956.         IMPORT_CFM_FUNCTION NewTimeBase
  5957.     ENDIF
  5958.  
  5959. ;
  5960. ; pascal void DisposeTimeBase(TimeBase tb)
  5961. ;
  5962.     IF ¬ GENERATINGCFM THEN
  5963.         Macro
  5964.         _DisposeTimeBase
  5965.             move.w              #$00B6,d0
  5966.             dc.w                $AAAA
  5967.         EndM
  5968.     ELSE
  5969.         IMPORT_CFM_FUNCTION DisposeTimeBase
  5970.     ENDIF
  5971.  
  5972. ;
  5973. ; pascal TimeValue GetTimeBaseTime(TimeBase tb, TimeScale s, TimeRecord *tr)
  5974. ;
  5975.     IF ¬ GENERATINGCFM THEN
  5976.         Macro
  5977.         _GetTimeBaseTime
  5978.             move.w              #$00A6,d0
  5979.             dc.w                $AAAA
  5980.         EndM
  5981.     ELSE
  5982.         IMPORT_CFM_FUNCTION GetTimeBaseTime
  5983.     ENDIF
  5984.  
  5985. ;
  5986. ; pascal void SetTimeBaseTime(TimeBase tb, const TimeRecord *tr)
  5987. ;
  5988.     IF ¬ GENERATINGCFM THEN
  5989.         Macro
  5990.         _SetTimeBaseTime
  5991.             move.w              #$00A7,d0
  5992.             dc.w                $AAAA
  5993.         EndM
  5994.     ELSE
  5995.         IMPORT_CFM_FUNCTION SetTimeBaseTime
  5996.     ENDIF
  5997.  
  5998. ;
  5999. ; pascal void SetTimeBaseValue(TimeBase tb, TimeValue t, TimeScale s)
  6000. ;
  6001.     IF ¬ GENERATINGCFM THEN
  6002.         Macro
  6003.         _SetTimeBaseValue
  6004.             move.w              #$00A8,d0
  6005.             dc.w                $AAAA
  6006.         EndM
  6007.     ELSE
  6008.         IMPORT_CFM_FUNCTION SetTimeBaseValue
  6009.     ENDIF
  6010.  
  6011. ;
  6012. ; pascal Fixed GetTimeBaseRate(TimeBase tb)
  6013. ;
  6014.     IF ¬ GENERATINGCFM THEN
  6015.         Macro
  6016.         _GetTimeBaseRate
  6017.             move.w              #$00A9,d0
  6018.             dc.w                $AAAA
  6019.         EndM
  6020.     ELSE
  6021.         IMPORT_CFM_FUNCTION GetTimeBaseRate
  6022.     ENDIF
  6023.  
  6024. ;
  6025. ; pascal void SetTimeBaseRate(TimeBase tb, Fixed r)
  6026. ;
  6027.     IF ¬ GENERATINGCFM THEN
  6028.         Macro
  6029.         _SetTimeBaseRate
  6030.             move.w              #$00AA,d0
  6031.             dc.w                $AAAA
  6032.         EndM
  6033.     ELSE
  6034.         IMPORT_CFM_FUNCTION SetTimeBaseRate
  6035.     ENDIF
  6036.  
  6037. ;
  6038. ; pascal TimeValue GetTimeBaseStartTime(TimeBase tb, TimeScale s, TimeRecord *tr)
  6039. ;
  6040.     IF ¬ GENERATINGCFM THEN
  6041.         Macro
  6042.         _GetTimeBaseStartTime
  6043.             move.w              #$00AB,d0
  6044.             dc.w                $AAAA
  6045.         EndM
  6046.     ELSE
  6047.         IMPORT_CFM_FUNCTION GetTimeBaseStartTime
  6048.     ENDIF
  6049.  
  6050. ;
  6051. ; pascal void SetTimeBaseStartTime(TimeBase tb, const TimeRecord *tr)
  6052. ;
  6053.     IF ¬ GENERATINGCFM THEN
  6054.         Macro
  6055.         _SetTimeBaseStartTime
  6056.             move.w              #$00AC,d0
  6057.             dc.w                $AAAA
  6058.         EndM
  6059.     ELSE
  6060.         IMPORT_CFM_FUNCTION SetTimeBaseStartTime
  6061.     ENDIF
  6062.  
  6063. ;
  6064. ; pascal TimeValue GetTimeBaseStopTime(TimeBase tb, TimeScale s, TimeRecord *tr)
  6065. ;
  6066.     IF ¬ GENERATINGCFM THEN
  6067.         Macro
  6068.         _GetTimeBaseStopTime
  6069.             move.w              #$00AD,d0
  6070.             dc.w                $AAAA
  6071.         EndM
  6072.     ELSE
  6073.         IMPORT_CFM_FUNCTION GetTimeBaseStopTime
  6074.     ENDIF
  6075.  
  6076. ;
  6077. ; pascal void SetTimeBaseStopTime(TimeBase tb, const TimeRecord *tr)
  6078. ;
  6079.     IF ¬ GENERATINGCFM THEN
  6080.         Macro
  6081.         _SetTimeBaseStopTime
  6082.             move.w              #$00AE,d0
  6083.             dc.w                $AAAA
  6084.         EndM
  6085.     ELSE
  6086.         IMPORT_CFM_FUNCTION SetTimeBaseStopTime
  6087.     ENDIF
  6088.  
  6089. ;
  6090. ; pascal long GetTimeBaseFlags(TimeBase tb)
  6091. ;
  6092.     IF ¬ GENERATINGCFM THEN
  6093.         Macro
  6094.         _GetTimeBaseFlags
  6095.             move.w              #$00B1,d0
  6096.             dc.w                $AAAA
  6097.         EndM
  6098.     ELSE
  6099.         IMPORT_CFM_FUNCTION GetTimeBaseFlags
  6100.     ENDIF
  6101.  
  6102. ;
  6103. ; pascal void SetTimeBaseFlags(TimeBase tb, long timeBaseFlags)
  6104. ;
  6105.     IF ¬ GENERATINGCFM THEN
  6106.         Macro
  6107.         _SetTimeBaseFlags
  6108.             move.w              #$00B2,d0
  6109.             dc.w                $AAAA
  6110.         EndM
  6111.     ELSE
  6112.         IMPORT_CFM_FUNCTION SetTimeBaseFlags
  6113.     ENDIF
  6114.  
  6115. ;
  6116. ; pascal void SetTimeBaseMasterTimeBase(TimeBase slave, TimeBase master, const TimeRecord *slaveZero)
  6117. ;
  6118.     IF ¬ GENERATINGCFM THEN
  6119.         Macro
  6120.         _SetTimeBaseMasterTimeBase
  6121.             move.w              #$00B4,d0
  6122.             dc.w                $AAAA
  6123.         EndM
  6124.     ELSE
  6125.         IMPORT_CFM_FUNCTION SetTimeBaseMasterTimeBase
  6126.     ENDIF
  6127.  
  6128. ;
  6129. ; pascal TimeBase GetTimeBaseMasterTimeBase(TimeBase tb)
  6130. ;
  6131.     IF ¬ GENERATINGCFM THEN
  6132.         Macro
  6133.         _GetTimeBaseMasterTimeBase
  6134.             move.w              #$00AF,d0
  6135.             dc.w                $AAAA
  6136.         EndM
  6137.     ELSE
  6138.         IMPORT_CFM_FUNCTION GetTimeBaseMasterTimeBase
  6139.     ENDIF
  6140.  
  6141. ;
  6142. ; pascal void SetTimeBaseMasterClock(TimeBase slave, Component clockMeister, const TimeRecord *slaveZero)
  6143. ;
  6144.     IF ¬ GENERATINGCFM THEN
  6145.         Macro
  6146.         _SetTimeBaseMasterClock
  6147.             move.w              #$00B3,d0
  6148.             dc.w                $AAAA
  6149.         EndM
  6150.     ELSE
  6151.         IMPORT_CFM_FUNCTION SetTimeBaseMasterClock
  6152.     ENDIF
  6153.  
  6154. ;
  6155. ; pascal ComponentInstance GetTimeBaseMasterClock(TimeBase tb)
  6156. ;
  6157.     IF ¬ GENERATINGCFM THEN
  6158.         Macro
  6159.         _GetTimeBaseMasterClock
  6160.             move.w              #$00B0,d0
  6161.             dc.w                $AAAA
  6162.         EndM
  6163.     ELSE
  6164.         IMPORT_CFM_FUNCTION GetTimeBaseMasterClock
  6165.     ENDIF
  6166.  
  6167. ;
  6168. ; pascal void ConvertTime(TimeRecord *inout, TimeBase newBase)
  6169. ;
  6170.     IF ¬ GENERATINGCFM THEN
  6171.         Macro
  6172.         _ConvertTime
  6173.             move.w              #$00B5,d0
  6174.             dc.w                $AAAA
  6175.         EndM
  6176.     ELSE
  6177.         IMPORT_CFM_FUNCTION ConvertTime
  6178.     ENDIF
  6179.  
  6180. ;
  6181. ; pascal void ConvertTimeScale(TimeRecord *inout, TimeScale newScale)
  6182. ;
  6183.     IF ¬ GENERATINGCFM THEN
  6184.         Macro
  6185.         _ConvertTimeScale
  6186.             move.w              #$00B7,d0
  6187.             dc.w                $AAAA
  6188.         EndM
  6189.     ELSE
  6190.         IMPORT_CFM_FUNCTION ConvertTimeScale
  6191.     ENDIF
  6192.  
  6193. ;
  6194. ; pascal void AddTime(TimeRecord *dst, const TimeRecord *src)
  6195. ;
  6196.     IF ¬ GENERATINGCFM THEN
  6197.         Macro
  6198.         _AddTime
  6199.             move.w              #$010C,d0
  6200.             dc.w                $AAAA
  6201.         EndM
  6202.     ELSE
  6203.         IMPORT_CFM_FUNCTION AddTime
  6204.     ENDIF
  6205.  
  6206. ;
  6207. ; pascal void SubtractTime(TimeRecord *dst, const TimeRecord *src)
  6208. ;
  6209.     IF ¬ GENERATINGCFM THEN
  6210.         Macro
  6211.         _SubtractTime
  6212.             move.w              #$010D,d0
  6213.             dc.w                $AAAA
  6214.         EndM
  6215.     ELSE
  6216.         IMPORT_CFM_FUNCTION SubtractTime
  6217.     ENDIF
  6218.  
  6219. ;
  6220. ; pascal long GetTimeBaseStatus(TimeBase tb, TimeRecord *unpinnedTime)
  6221. ;
  6222.     IF ¬ GENERATINGCFM THEN
  6223.         Macro
  6224.         _GetTimeBaseStatus
  6225.             move.w              #$010B,d0
  6226.             dc.w                $AAAA
  6227.         EndM
  6228.     ELSE
  6229.         IMPORT_CFM_FUNCTION GetTimeBaseStatus
  6230.     ENDIF
  6231.  
  6232. ;
  6233. ; pascal void SetTimeBaseZero(TimeBase tb, TimeRecord *zero)
  6234. ;
  6235.     IF ¬ GENERATINGCFM THEN
  6236.         Macro
  6237.         _SetTimeBaseZero
  6238.             move.w              #$0128,d0
  6239.             dc.w                $AAAA
  6240.         EndM
  6241.     ELSE
  6242.         IMPORT_CFM_FUNCTION SetTimeBaseZero
  6243.     ENDIF
  6244.  
  6245. ;
  6246. ; pascal Fixed GetTimeBaseEffectiveRate(TimeBase tb)
  6247. ;
  6248.     IF ¬ GENERATINGCFM THEN
  6249.         Macro
  6250.         _GetTimeBaseEffectiveRate
  6251.             move.w              #$0124,d0
  6252.             dc.w                $AAAA
  6253.         EndM
  6254.     ELSE
  6255.         IMPORT_CFM_FUNCTION GetTimeBaseEffectiveRate
  6256.     ENDIF
  6257.  
  6258. ;
  6259. ;***************************************
  6260. ;*                                        *
  6261. ;*          C  A  L  L  B  A  C  K             *
  6262. ;*                                        *
  6263. ;***************************************
  6264. ;
  6265. ;
  6266. ; pascal QTCallBack NewCallBack(TimeBase tb, short cbType)
  6267. ;
  6268.     IF ¬ GENERATINGCFM THEN
  6269.         Macro
  6270.         _NewCallBack
  6271.             move.w              #$00EB,d0
  6272.             dc.w                $AAAA
  6273.         EndM
  6274.     ELSE
  6275.         IMPORT_CFM_FUNCTION NewCallBack
  6276.     ENDIF
  6277.  
  6278. ;
  6279. ; pascal void DisposeCallBack(QTCallBack cb)
  6280. ;
  6281.     IF ¬ GENERATINGCFM THEN
  6282.         Macro
  6283.         _DisposeCallBack
  6284.             move.w              #$00EC,d0
  6285.             dc.w                $AAAA
  6286.         EndM
  6287.     ELSE
  6288.         IMPORT_CFM_FUNCTION DisposeCallBack
  6289.     ENDIF
  6290.  
  6291. ;
  6292. ; pascal short GetCallBackType(QTCallBack cb)
  6293. ;
  6294.     IF ¬ GENERATINGCFM THEN
  6295.         Macro
  6296.         _GetCallBackType
  6297.             move.w              #$00ED,d0
  6298.             dc.w                $AAAA
  6299.         EndM
  6300.     ELSE
  6301.         IMPORT_CFM_FUNCTION GetCallBackType
  6302.     ENDIF
  6303.  
  6304. ;
  6305. ; pascal TimeBase GetCallBackTimeBase(QTCallBack cb)
  6306. ;
  6307.     IF ¬ GENERATINGCFM THEN
  6308.         Macro
  6309.         _GetCallBackTimeBase
  6310.             move.w              #$00EE,d0
  6311.             dc.w                $AAAA
  6312.         EndM
  6313.     ELSE
  6314.         IMPORT_CFM_FUNCTION GetCallBackTimeBase
  6315.     ENDIF
  6316.  
  6317. ;
  6318. ; pascal OSErr CallMeWhen(QTCallBack cb, QTCallBackUPP callBackProc, long refCon, long param1, long param2, long param3)
  6319. ;
  6320.     IF ¬ GENERATINGCFM THEN
  6321.         Macro
  6322.         _CallMeWhen
  6323.             move.w              #$00B8,d0
  6324.             dc.w                $AAAA
  6325.         EndM
  6326.     ELSE
  6327.         IMPORT_CFM_FUNCTION CallMeWhen
  6328.     ENDIF
  6329.  
  6330. ;
  6331. ; pascal void CancelCallBack(QTCallBack cb)
  6332. ;
  6333.     IF ¬ GENERATINGCFM THEN
  6334.         Macro
  6335.         _CancelCallBack
  6336.             move.w              #$00B9,d0
  6337.             dc.w                $AAAA
  6338.         EndM
  6339.     ELSE
  6340.         IMPORT_CFM_FUNCTION CancelCallBack
  6341.     ENDIF
  6342.  
  6343. ;
  6344. ;***************************************
  6345. ;*                                        *
  6346. ;*          C L O C K   C A L L B A C K      *
  6347. ;*                S U P P O R T              *
  6348. ;*                                        *
  6349. ;***************************************
  6350. ;
  6351. ;
  6352. ; pascal OSErr AddCallBackToTimeBase(QTCallBack cb)
  6353. ;
  6354.     IF ¬ GENERATINGCFM THEN
  6355.         Macro
  6356.         _AddCallBackToTimeBase
  6357.             move.w              #$0129,d0
  6358.             dc.w                $AAAA
  6359.         EndM
  6360.     ELSE
  6361.         IMPORT_CFM_FUNCTION AddCallBackToTimeBase
  6362.     ENDIF
  6363.  
  6364. ;
  6365. ; pascal OSErr RemoveCallBackFromTimeBase(QTCallBack cb)
  6366. ;
  6367.     IF ¬ GENERATINGCFM THEN
  6368.         Macro
  6369.         _RemoveCallBackFromTimeBase
  6370.             move.w              #$012A,d0
  6371.             dc.w                $AAAA
  6372.         EndM
  6373.     ELSE
  6374.         IMPORT_CFM_FUNCTION RemoveCallBackFromTimeBase
  6375.     ENDIF
  6376.  
  6377. ;
  6378. ; pascal QTCallBack GetFirstCallBack(TimeBase tb)
  6379. ;
  6380.     IF ¬ GENERATINGCFM THEN
  6381.         Macro
  6382.         _GetFirstCallBack
  6383.             move.w              #$012B,d0
  6384.             dc.w                $AAAA
  6385.         EndM
  6386.     ELSE
  6387.         IMPORT_CFM_FUNCTION GetFirstCallBack
  6388.     ENDIF
  6389.  
  6390. ;
  6391. ; pascal QTCallBack GetNextCallBack(QTCallBack cb)
  6392. ;
  6393.     IF ¬ GENERATINGCFM THEN
  6394.         Macro
  6395.         _GetNextCallBack
  6396.             move.w              #$012C,d0
  6397.             dc.w                $AAAA
  6398.         EndM
  6399.     ELSE
  6400.         IMPORT_CFM_FUNCTION GetNextCallBack
  6401.     ENDIF
  6402.  
  6403. ;
  6404. ; pascal void ExecuteCallBack(QTCallBack cb)
  6405. ;
  6406.     IF ¬ GENERATINGCFM THEN
  6407.         Macro
  6408.         _ExecuteCallBack
  6409.             move.w              #$012D,d0
  6410.             dc.w                $AAAA
  6411.         EndM
  6412.     ELSE
  6413.         IMPORT_CFM_FUNCTION ExecuteCallBack
  6414.     ENDIF
  6415.  
  6416. ;
  6417. ;***************************************
  6418. ;*                                        *
  6419. ;*          S Y N C    T A S K S              *
  6420. ;*                S U P P O R T              *
  6421. ;*                                        *
  6422. ;***************************************
  6423. ;
  6424. ;
  6425. ; pascal OSErr QueueSyncTask(QTSyncTaskPtr task)
  6426. ;
  6427.     IF ¬ GENERATINGCFM THEN
  6428.         Macro
  6429.         _QueueSyncTask
  6430.             move.w              #$0203,d0
  6431.             dc.w                $AAAA
  6432.         EndM
  6433.     ELSE
  6434.         IMPORT_CFM_FUNCTION QueueSyncTask
  6435.     ENDIF
  6436.  
  6437. ;
  6438. ; pascal OSErr DequeueSyncTask(QTSyncTaskPtr qElem)
  6439. ;
  6440.     IF ¬ GENERATINGCFM THEN
  6441.         Macro
  6442.         _DequeueSyncTask
  6443.             move.w              #$0204,d0
  6444.             dc.w                $AAAA
  6445.         EndM
  6446.     ELSE
  6447.         IMPORT_CFM_FUNCTION DequeueSyncTask
  6448.     ENDIF
  6449.  
  6450. ;  UPP call backs 
  6451.     ENDIF ; __MOVIES__ 
  6452.  
  6453.